我有一个应用程序,它复制一个
PDF form
(带有像textboxes
这样的控制元素)并让用户填充并保存它(无需打印它)。我的应用程序知道一些 fields like "name", "first name"
、出生日期等,所以我想 make my application fill these fields on its own
,为用户节省一些时间。
vb.net 是否有一个接口,允许我写入 PDF 文本框?
为此您需要一个 PDF 库。我建议您尝试使用 Docotic.Pdf 库 来完成该任务(我为供应商工作)。
请查看展示如何填写现有 PDF 表单的示例。
PDF 中的 AcroForms 不需要 PDF 库。
只需 Acrobat Reader(重写器)即可。您需要做的是将 VBA 中的文本数据导出到表单数据文件中(FDF 很像邮件合并)。
然后双击自动加载 FDF 打开 Adobe (Acrobat) Reader 依次填充 PDF,或者使用 FDF 工具包从任何数据库(例如 Excel)按顺序填充数千个文件。然而更简单的是使用 Reader Print /To。
您有一个模板 form.pdf 可在 Adobe reader 中使用。
您可以以此格式导出表单文本数据 PER PDF(这部分需要您的 VBA 编程技能)HomerSimpson.FDF
%FDF-1.4
%Form
1 0 obj
<<
/FDF <<
/F (HomerSimpson.pdf)
/Fields [<<
/T (Dobby) /V (5/12/72)
>> <<
/T (FirstName) /V (Homer)
>> <<
/T (LastName) /V (Simpson)
>> <<
/T (MiddleName) /V (Jay)
>>]
/UF (Template.pdf)
>>
/Type /Catalog
>>
endobj
trailer
<<
/Root 1 0 R
>>
%%EOF
然后双击该文件将自动填充模板。
或者 自动打印为 PDF 或纸张。
每个用户一个命令行。
"C:\Program Files\Adobe\Acrobat Reader DC\Reader\acrord32.exe" /T printing options HomerSimpson.FDF
这里我没有设置自动打印而是手动打印(/P)来简单说明当使用打印命令调用FDF时会发生什么。