Я использую iText 2.1.7, чтобы объединить несколько документов PDF в один PDF. Приведенный ниже код, кажется, работает очень хорошо, однако в некоторых случаях рендеринг PDF масштабируется немного меньше, например, на уровне 90% от PDF, если он печатается непосредственно перед обработкой.
Есть ли способ сохранить текущий размер?
private void doMerge(List<InputStream> list, OutputStream outputStream) throws DocumentException, IOException {
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, outputStream);
document.open();
PdfContentByte cb = writer.getDirectContent();
for (InputStream in : list) {
PdfReader reader = new PdfReader(in);
for (int i = 1; i <= reader.getNumberOfPages(); i++) {
document.newPage();
//import the page from source pdf
PdfImportedPage page = writer.getImportedPage(reader, i);
//add the page to the destination pdf
cb.addTemplate(page, 0, 0);
}
}
outputStream.flush();
document.close();
outputStream.close();
}