Come inserire un PDPage in un altro PDPage con pdfbox

Uso diversi strumenti come l’elaborazione per creare grafici vettoriali. Questi grafici sono scritti come PDF a pagina singola o multipla. Vorrei includere questi grafici in un unico report in formato pdf usando pdfbox.

Il mio stream di lavoro corrente include questi pdf come immagini con il seguente pseudo-codice

PDDocument inFile = PDDocument.load(file); PDPage firstPage = (PDPage) inFile.getDocumentCatalog().getAllPages().get(0); BufferedImage image = firstPage.convertToImage(BufferedImage.TYPE_INT_RGB, 300); PDXObjectImage ximage = new PDPixelMap(document, image); PDPageContentStream contentStream = new PDPageContentStream(document, page); contentStream.drawXObject(ximage, 0, 0, ximage.getWidth(), ximage.getHeight()); contentStream.close(); 

Mentre questo funziona, perde i vantaggi dei formati di file vettoriali, in particolare la qualità dei file / delle dimensioni rispetto alla qualità di stampa.

È ansible utilizzare pdfbox per includere altre pagine PDF come oggetti incorporati all’interno di una pagina (Non aggiunto come pagina separata)? Potrei ad esempio utilizzare un PDStream? Preferirei una soluzione come pdflatex è in grado di incorporare le figure pdf in un nuovo documento pdf.

Quali altre librerie Java puoi raccomandare per quell’attività?