2012-11-06 84 views
0

我很確定我錯過了一些簡單的東西,但是因爲我已經在這一段時間打破了我的頭腦,所以我只會問。PDFContentByte的第二頁

我使用JavaScript來訪問的iText(Java)的庫採取可填充PDF,並通過瀏覽器服務於它。這個過程適用於我的第一個,現在我正在做一個原始可填寫的PDF有兩頁的頁面。我一直在嘗試獲得第二頁現在一段時間。我使用PdfContentByte將其傳送到瀏覽器,並且它工作,除非我似乎無法讓PdfContentByte有第二頁。我的相關代碼如下。當我按照他們的方式添加第二個模板(第2頁)時,它會移動我正在編寫的內容,但我仍然只能看到一個(美國信)頁面。

這可能不是最有效的代碼,但就像我說的,我一直在這幾件事情。如果有人有指針,我會非常感激。

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); 

回答

1

看一看iText的行動中,第2版的chapter 6,尤其是在第6.4.1:串聯和分裂的PDF文檔。

上市6.22,ConcatenateStamp.java,顯示您如何創建的多個PDF文件的其他網頁拷貝PDF;該樣本實際上還增加了一個新的「Y的頁面X」頁腳,您可以將其保留或從樣本中移除。

+0

這有幫助,謝謝你mkl。我在文檔中添加一個新頁面,然後將第二頁放在-2位置。這適用於我的2頁,但如果我需要三分之一的話,我必須拿出別的東西。 –