Ich muss zwei PDF-Dateien mit PdfBox von Apache zusammenführen. Ich habe dazu physische PDF-Dateien genommen. Unten ist der Code:Pdf-Dateien mit PDFBox verschmelzen
PDFMergerUtility ut = new PDFMergerUtility();
ut.addSource(path1);
ut.addSource(path2);
ut.setDestinationFileName(path3);
ut.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
Dateien sind perfekt verschmolzen dann aber einige Einschränkungen haben, wie unten:
- I 1. Datei im Code erschaffe selbst, so ist es PDDocument Objekt.
- Die Datei, die ich mit 1. Datei zusammenführen muss, ist im Byte-Array-Format.
- Ich muss die zusammengeführten Dateien nicht speichern, sondern muss sie als Byte-Array konvertieren.
Bitte jemand helfen mir diese Anforderung zu erreichen.
Haben Sie ein Beispiel für den Ansatz "ByteArrayOutputStream"? Ich habe versucht, zwei Dokumente in zwei Streams zu speichern, die Arrays kombiniert und die kombinierten Bytes in ein neues Dokument neu geladen. Es schien jedoch nicht zu funktionieren. – Trinimon
'ByteArrayOutputStream baos = neues ByteArrayOutputStream(); doc.save (baos); doc.close(); doc = PDDocument.load (baos.toByteArray()); ' –
Sie wollten also das selbst erstellte' PDDocument' speichern und neu laden? ... und in Ihrem Kommentar ging es nicht um das Zusammenführen von Dokumenten durch die Kombination von ByteArrayOutputStream's. Recht? – Trinimon