如何编写带有java和pdfbox的pdf页面,通过写入我已知的像素的特定位置?
我尝试了这个,但它覆盖了:
PDDocument document = null;
try {
document = PDDocument.load(new File("/x/x/x/mypdf.pdf"));
PDPage page = (PDPage) document.getDocumentCatalog().getAllPages().get(0);
PDFont font = PDType1Font.HELVETICA_BOLD;
PDPageContentStream contentStream = new PDPageContentStream(document, page);
page.getContents().getStream();
contentStream.beginText();
contentStream.setFont(font, 12);
contentStream.moveTextPositionByAmount(100, 100);
contentStream.drawString("Hello");
contentStream.endText();
contentStream.close();
document.save("/x/x/x/mypdf.pdf");
document.close();
} catch (IOException e) {
e.printStackTrace();
} catch (COSVisitorException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
Ani*_*rni 18
你可以使用PDFBox,你所缺少的就是附加到页面上.只需改变这一行:
PDPageContentStream contentStream = new PDPageContentStream(document, page);
Run Code Online (Sandbox Code Playgroud)
至:
PDPageContentStream contentStream = new PDPageContentStream(document, page, true, true);
Run Code Online (Sandbox Code Playgroud)
从PDFBox 2.0开始,boolean appendContent已被替换AppendMode APPEND为以前代码的等价物:
PDPageContentStream contentStream = new PDPageContentStream(
document, page, PDPageContentStream.AppendMode.APPEND, true
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17431 次 |
| 最近记录: |