设置
a) 我有一个阅读器扩展的 XFA 表单(包含 2 个条形码)
b) 我有预填充 XML
预期解决方案
- 使用 XML 预填充 XFA 表单,然后展平 PDF(以便它可以在浏览器等中查看
)工作
- XFA 表单的预填充工作正常,所有字段和条形码都根据需要填充(生成 1 个寻呼机) - 看起来很完美
问题/什么不起作用
- 我的代码的第二部分拾取预填充的 PDF,然后展平 XFA 表单,生成的 pdf 现在神奇地变成了 2 个寻呼机。
- 体内条形码出现在第一页,所有其他内容被错误地推送到第二页。
- 所有元素的位置都相对正确,但是分成两页 - 它们都应该在一页上。
- 表单和字段被展平并在浏览器中
查看为了感兴趣
,我使用各种形式的代码“展平”了表单,示例如下
PDF FLATTENING CODE A
PdfReader reader = new PdfReader(src);
PdfStamper stamper = new PdfStamper(reader, new
FileOutputStream(dest));
stamper.setFormFlattening(true);
stamper.close();
PDF 展平代码 B
Document document = new Document();
PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(new File(dest)));
XFAFlattener xfaf = new XFAFlattener(document, writer);
xfaf.flatten(new PdfReader(fileToByteArray(src)));
document.close();
问题
- 我是否使用了错误的“扁平化”代码?
- 有没有人经历过类似的事情?
- 为什么会发生这种情况
- 如何解决这个问题
非常感谢这里的任何输入。
编号:SUP-1858