C# itextsharp复制带有空字段的pdf将其添加到pdf,仅读取第一页的字段
当我按下按钮时,checkedlistbox中的项目应以PDF格式写入。PDF文档有1页20个字段,但应该灵活。例如,如果checkedlistbox有52个条目,程序将创建一个包含3页的PDF(复制PDF并添加2次)。这是可行的,但以下页面的字段与第一个页面的字段具有相同的名称。我希望这不是问题 然后读取字段名:C# itextsharp复制带有空字段的pdf将其添加到pdf,仅读取第一页的字段,c#,pdf,itext,C#,Pdf,Itext,当我按下按钮时,checkedlistbox中的项目应以PDF格式写入。PDF文档有1页20个字段,但应该灵活。例如,如果checkedlistbox有52个条目,程序将创建一个包含3页的PDF(复制PDF并添加2次)。这是可行的,但以下页面的字段与第一个页面的字段具有相同的名称。我希望这不是问题 然后读取字段名: PdfReader pdfReader = new PdfReader(path); AcroFields pdfFormFields = pdfReader.AcroFields;
PdfReader pdfReader = new PdfReader(path);
AcroFields pdfFormFields = pdfReader.AcroFields;
foreach (KeyValuePair<string, AcroFields.Item> kvp in pdfFormFields.Fields) {
listoffieldnames.Add(kvp.Key.ToString());
}
pdfReader.Close();
PdfReader PdfReader=新的PdfReader(路径);
AcroFields pdfFormFields=pdfReader.AcroFields;
foreach(pdfFormFields.Fields中的KeyValuePair kvp){
添加(kvp.Key.ToString());
}
pdfReader.Close();
我的问题是,阅读器只读取第一页的字段
该程序创建一个包含3页的PDF(复制PDF并添加2次)。这是可行的,但以下页面的字段与第一个页面的字段具有相同的名称。我希望这不是问题
这是个问题
PDF只有一个抽象表单定义,其中字段由其完全限定名唯一标识。另一方面,一个字段可以有多个小部件,即多个可视化,这些小部件的显示细节可能不同(例如,可能使用不同的字体或字体大小),但它们都显示相同的值
将同一源PDF的多个副本复制到目标PDF的代码可能会以不同的方式处理此问题:
- 它可能会忽略字段唯一性问题,并创建一个包含多个同名表单字段的PDF
- 它可能会识别重复的字段名,并将这些字段与单个字段的多个窗口小部件合并在一起
- 它可能会识别重复的字段名,并重命名重复的字段名,以最终获得唯一的名称