问题标签 [acrofields]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
395 浏览

c# - Acrofield 的 iText 对齐 [C#]

我得到了一个带有一些 Acrofields 的 PDF 文件。我希望一个文本字段的文本居中。

我试过了:

这适用于之后在代码中设置的文本(使用 SetField)。但是,一旦我打开 PDF 并编辑该字段的文本,它就会再次向左对齐...

我的代码错误的任何想法?

0 投票
0 回答
91 浏览

java - 使用 iText 在文档中读取具有可变页面大小的 acrofields

我正在使用 iText 添加和读取 acrofields。但它遇到了文档中的页面大小可变的问题。所以例如。3 页的 Pdf 文档 -> letter, legal , letter 它无法获取所有 acrofields。但是,如果所有页面都是合法的或所有页面都是字母,则可以完美运行这是我用来阅读 acrofields 的代码。

0 投票
1 回答
601 浏览

itext - pdfStamper.AcroFields.SetField 不保留外观设置

我使用 iTextSharp 5.5.13 创建带有文本 AcroFields 的 pdf 文件,然后在第二步中编辑 pdf,用一些值填充 AcroFields。

对于某些字段我必须设置字符间距,所以我使用CreateAppearance方法。这是代码:

此代码在可编辑字段中产生具有精细字符间距的预期 pdf 结果。

问题是当我编辑 pdf 以填充 AcroFields 时:

生成的扁平化 pdf 不保持外观字符间距...

我的代码有什么问题?

谢谢

0 投票
0 回答
830 浏览

c# - 由于混合 AcroForm-XFA 问题,在 C# 中使用 itext7 进行的 AcroField 更改未提交/不可见

项目是从数据库/datagridview 以编程方式填充现有表单,并允许用户在之后编辑表单,因为数据库不包含所需的所有值。

我能够获取这些值,并将它们放入表单中:

  1. 查看表单时,使用 AcroForms 设置的值不会显示/打印。
  2. 查看表单时不显示背景颜色更改。

单击该字段时会出现这两个更改。

我知道这是由混合 XFA 和 AcroForms 问题引起的,并且 pdfXFA 是 itext 库的付费扩展。pdfXFA 仅用于展平 XFA,我不需要这样做,因为我需要这些字段继续可编辑。我已经尝试过以下提出的解决方案:

  1. 为什么不使用 itext-7-form-field-values-print
  2. 这篇关于 XFA 值的精彩文章
  3. 本教程包括 .RemoveXfaForm()

其他解决方案都引用了 .RemoveXfaForm() ,它应该删除所有 XFA 格式,但似乎没有按预期工作。使用 GetXFA 发现即使在调用 .RemoveXfaForm() 后它仍然存在。

我尝试将 form.SetNeedAppearances(true) 和 form.RemoveXfaForm() 移动到设置值之前,以及在 pdf.close() 事件之前设置值之后。我觉得我只是在这里遗漏了一些非常简单的东西,可以使用一些帮助:

我已经在多种组合中尝试了注释掉的建议,此时真的只需要找出我是否可以让它工作或开始寻找另一个解决方案,(我已经通过电子邮件发送了 itext,没有回复)所以谢谢你的任何见解!

0 投票
0 回答
1491 浏览

c# - 填写 PDF 表格的问题。我应该使用 C# 和 IText AcroFields 以编程方式从数据库中填写表单吗?还是这个解决方案已经过时了?

TLDR;IText 解决方案存在以下问题,并且没有找到“更好”的选项。

Project 目前正在寻找以编程方式从数据库中填写表单的最佳方法。经过大量研究后,我发现了一些基于以下标准的解决方案,并创建了一个(有点工作的)解决方案:

  • 我们目前正在使用 Access,但在未来几个月内将转向 SQL。
  • 填写由国家机构根据用户输入创建的多个独特表格。(所以我们不能只创建自己的表单。)
  • 各机构会定期更新表格,但所需数据保持不变,并将存储在数据库中。

为了解决这个问题,我研究了IText之类的东西,它有大量的 PDF 操作工具,其中一小部分是它可以使用 AcroField 技术填写表格。

我还在这里阅读了许多资源,包括:

该解决方案确实填写了表格,但是我无法解决一些非常大的问题:

  1. 更改并不总是提交到表单(例如 .backgroundcolor)/将显示为空,直到用户单击表单框。
  2. 值将打印,但表单框更改(例如 .backgroundcolor)也会打印。
  3. 这些表单有多余的字段,AcroForm 似乎有来自 Adob​​e 的父/子字段名称的问题。(例如,它将重命名任何类似的字段)
  4. Itext7 没有用于 C# 的 API,我一直无法解决这些问题。

任何帮助、文章或见解都将不胜感激,我知道“开放式”问题在这里没有得到太多帮助,但不得不尝试。谢谢你。

0 投票
1 回答
477 浏览

java - 拼合 PDF 字段会删除格式

我尝试PDAcroForm.flatten()在包含富文本的 pdf 中展平表单字段 ( )。这样做时,格式(粗体、斜体、颜色、大小)会丢失。

pdf文件 它不再可食用,但格式也消失了。

Adobe Acrobat Pro 10.1.1通过表单菜单使用 , 创建该表单元素,并将 pdf 保存为test.pdf.

为了完整起见,我在 github 上上传了所有内容:

问题是,如何删除输入字段并将其展平,同时保持内容的样式以及字段中的自动大小等更可取的功能?

0 投票
1 回答
438 浏览

java - 无法在 Ms Word 中使用 acrofields 为表单设置字段值

我正在尝试通过提供诸如 textField 之类的表单在 Ms Word 中制作可填写的 pdf,如此所述。接下来我尝试更改表单字段的值,如此处所示。但是,当我尝试它时,值不会改变,并且会form.getFields().values()给出一个空数组。我已经为每个字段添加了书签,但它仍然没有改变值。我错过了什么吗?以下是我尝试过的代码:

这是我正在尝试创建的可填写 pdf: 文件 谢谢。

0 投票
1 回答
407 浏览

c# - PDF acrofield 中的文本垂直居中(C#、iTextSharp)

我的程序必须在 PDF Acrofields 上做一些样式。其中之一是将多行文本字段(不是富文本字段)内的文本水平和垂直居中。我设法使用以下代码将其水平居中:

但我找不到任何方法将文本垂直居中。非常感谢任何帮助。

0 投票
2 回答
202 浏览

perl - 如何使用 Perl 的 PDF::API2 以 PDF 格式呈现复选框

几天来,我一直在尝试让 CheckBox 或 Radio Button 使用 PDF::API2 进行渲染,但一直未能成功。

我翻阅了 PDFMark 参考资料、PDF 规范以及我能找到的任何示例。我可以获得简单的 Widget 注释来渲染,但无法获得任何需要外观流或外观字典才能正常工作的东西。下面是一些尝试设置复选框的测试代码:

我希望看到这个页面中间呈现一个复选框,而不是我得到一个空的、不可用的注释。我正在尝试使 NeedAppearances 标志起作用,因为我已经放弃尝试正确的外观流/外观字典,但我会感谢使用这两种方法的解决方案。

0 投票
1 回答
555 浏览

java - PDF/A 验证

我正在尝试根据 PDF/A-1b 规范验证自行创建的 PDF 文件,但出现以下错误(对于验证,我使用了 Apache PDFBox Preflight 库。Apache PDFBox 和 Preflight 的版本是 2.0.15)

3.1.1:字体定义无效,Helvetica:字体字典中缺少一些必填字段:firstChar、lastChar、widths。

3.1.3:字体定义无效,Helvetica:FontDescriptor 中缺少 FontFile 条目

3.1.1:无效的字体定义,ZapfDingbats:字体字典中缺少一些必填字段:firstChar、lastChar、widths。

3.1.3:无效的字体定义,ZapfDingbats:FontDescriptor 中缺少 FontFile 条目

7.11.1:元数据错误

我怎样才能克服上述问题。先感谢您