Itextpdf 在添加到 Pdf 文档时会裁剪一些图像。
我已经使用以下 https://github.com/buda-base/buda-iiif-server/blob/master/src/test/java/io/bdrc/iiif/PDFBugDemo.java 编写了一个演示,显示了问题 ( pom )以及此图像:( https://github.com/buda-base/buda-iiif-server/blob/master/src/test/resources/test.tif )
演示代码使用 itext7 和 Apache PdfBox 从同一图像生成两个不同的文件。预期输出是 PdfBox 生成的输出。 itext7 显然裁剪了原始图像。这种情况并不总是发生,我怀疑 tif 文件存在特定问题。
这里有 Itext7 ( https://drive.google.com/open?id=16oUhSnhbW4QWiYn2aFPsKp3xA0__yd3B ) 和 pdfBox( https://drive.google.com/open?id=1My_-EM27VARKDBgM5tMig7FkYlTWtflG ) 的文件
最佳答案
事实上,问题出在 PDFDocument 默认边距值上。感谢 Tilman Hausherr,在将图像添加到文档/页面之前,我能够通过执行以下操作来解决问题:
PdfWriter writer = new PdfWriter("testPdfItext.pdf", new WriterProperties().setPdfVersion(PdfVersion.PDF_2_0));
PdfDocument pdfDocument = new PdfDocument(writer);
Document document = new Document(pdfDocument);
document.setMargins(0, 0, 0, 0);
关于image - 为什么 pdf 中有些图像会被裁剪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57113834/