0

我很确定我错过了一些简单的东西,但是由于我已经对此有一段时间了,我只是想问一下。

我正在使用 JavaScript 访问 iText (Java) 库以获取可归档的 PDF 并通过浏览器提供它。该过程适用于我的第一个过程,现在我正在做一个原始可填写 PDF 有 2 页的过程。一段时间以来,我一直在尝试获取第二页。我正在使用 PdfContentByte 将它发送到浏览器,它可以工作,但我似乎无法让 PdfContentByte 有第二页。我的相关代码如下。当我按照我的方式添加第二个模板(page2)时,它会移动我正在写的内容,但我仍然只得到一个(美国信函)页面。

这可能不是最有效的代码,但就像我说的,我一直在尝试这方面的一些事情。如果有人有指点,我将不胜感激。

var cb:com.itextpdf.text.pdf.PdfContentByte = writer.getDirectContent();    
var cb2:com.itextpdf.text.pdf.PdfContentByte = writer.getDirectContent();    
var reader2:com.itextpdf.text.pdf.PdfReader = new com.itextpdf.text.pdf.PdfReader(os.toByteArray());    
var page:com.itextpdf.text.pdf.PdfImportedPage = writer.getImportedPage(reader2, 1); 

cb.addTemplate(page, 0, 0);  //this works as expected 

var page2:com.itextpdf.text.pdf.PdfImportedPage = writer.getImportedPage(reader2, 2); 

// this will add, and with the 100 do an offset, but the
// "physical size" of the paper is the same 
cb2.addTemplate(page2, 0, 100);
4

1 回答 1

1

查看 iText in Action 第 2 版的第 6 章,尤其是第 6.4.1 小节:连接和拆分 PDF 文档。

清单 6.22,ConcatenateStamp.java,向您展示了如何从多个其他 PDF 的页面副本创建 PDF;该示例实际上还添加了一个新的“Y 页 X”页脚,您可以将其保留或从示例中删除。

于 2012-11-06T16:00:34.753 回答