Skip to content

Commit

Permalink
some pdf experiments
Browse files Browse the repository at this point in the history
  • Loading branch information
thvitt committed Jul 5, 2020
1 parent 37df3f6 commit 0376e1b
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 0 deletions.
35 changes: 35 additions & 0 deletions src/main/java/net/faustedition/gen/PdfMerger.java
@@ -0,0 +1,35 @@
package net.faustedition.gen;

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;

public class PdfMerger {

public static void main(String[] argv) {
final PdfWriter writer;
try {
writer = new PdfWriter("/tmp/out.pdf");
writer.setSmartMode(true);
final PdfDocument pdfDocument = new PdfDocument(writer);
pdfDocument.initializeOutlines();
Path root = Paths.get("/home/tv/git/faust-gen/target/www/transcript/diplomatic/2_H");

for (int i = 1; i < 390; i++) {
PdfDocument addedDoc = new PdfDocument(new PdfReader(root.resolve(String.format("page_%d.pdf", i)).toString()));
addedDoc.copyPagesTo(1, addedDoc.getNumberOfPages(), pdfDocument);
addedDoc.close();
}
pdfDocument.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
32 changes: 32 additions & 0 deletions src/main/java/net/faustedition/gen/PdfMergerBoxBased.java
@@ -0,0 +1,32 @@
package net.faustedition.gen;

import org.apache.pdfbox.io.MemoryUsageSetting;
import org.apache.pdfbox.multipdf.PDFMergerUtility;

import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;

public class PdfMergerBoxBased {


public static void main(String[] argv) {
final PDFMergerUtility merger = new PDFMergerUtility();
merger.setDestinationFileName("/tmp/2_H_box.pdf");
final Path root = Paths.get("/home/tv/git/faust-gen/target/www/transcript/diplomatic/2_H");
for (int i = 1; i < 390; i++) {
try {
merger.addSource(root.resolve(String.format("page_%d.pdf", i)).toFile());
} catch (FileNotFoundException e) {
System.err.println("file not found" + e.getMessage());
}
}
try {
merger.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly());
} catch (IOException e) {
e.printStackTrace();
}
}

}

0 comments on commit 0376e1b

Please sign in to comment.