2016-07-27 86 views
1

的iText 7.0.0iText7深層次formField操作不正確,

我不知道,如果是的LiveCycle/XFA或通過我們團隊的形式通過的一項公約的功能,但很多表單域的合格名稱結尾看起來像:

form[0].someForm_page1[0].table1[0].row1[0].cell1[0].Text[0] 
form[0].someForm_page1[0].table1[0].row1[0].cell1[0].Text[1] 
合併(PdfDocument.copyTo ......包括PdfPageFormCopier)只有一個頁面的/ Widget是複製的直接父(雖然我提到XFA以上,出現這種情況的非混合動力時

也是形式)。

PdfDocument src = createForRead("someForm.pdf"); 
PdfDocument merged = createForWrite("merged.pdf"); 
src.copyPagesTo(1, src.getNumberOfPages(), merged, new PdfPageFormCopier()); 
merged.close(); 
src.close(); 

結果看起來像

cell1[0].Text[0] 
cell1[0].Text[1] 

或更糟的是,像這樣

page1.section1.Text1 
page2.section1.Text1 

沒有建立完整的層次的情況下,可能會導致獨特的領域,成爲非唯一

領域
section1.Text1 
section1.Text1 

in智能模式,事情似乎有點差仍然(這個似乎是固定在7.0.1-20162707!)

page1.Text1 
page2.Text1 

合併到

page1.Text1 
page1.Text1 
+0

請分享樣本PDF以重現此問題。 – mkl

+0

僅供參考 - 截至2008年8月8日(提交4ab26ed),這是固定在7.0.1-SNAPSHOT中的,並且正在iText JIRA中跟蹤分辨率。 –

回答

0

這已被固定在iText的7.0。 1