(window.webpackJsonp=window.webpackJsonp||[]).push([[181],{369:function(e,_,t){"use strict";t.r(_);var r=t(15),a=function(e){e.options.__data__block__={mermaid_382ee18c:"classDiagram\n    class PDFDoc\n    class PDFForm\n    class PDFPage\n    class PDFFormField\n    class Widget\n\n    PDFDoc --\x3e PDFForm : has a\n    PDFDoc --\x3e PDFPage : has many\n    PDFForm --\x3e PDFFormField : has many\n    PDFFormField --\x3e Widget : has many\n    PDFPage --\x3e Widget : has many\n    \n    class PDFDoc {\n        +getPDFForm(): PDFForm;\n        +getPageByIndex(pageIndex): Promise<PDFPage>;\n    }\n    class PDFForm {\n        +getField(fieldName): Promise<PDFFormField>;\n        +getFields(): Promise<PDFFormField>;\n    }\n    class PDFPage {\n        +getAnnots(): Promise<Annot>;\n    }\n    class PDFFormField {\n        +getWidgetsCount(): number;\n        +getWidget(index): number;\n    }\n"}},n=Object(r.a)({},(function(){var e=this,_=e._self._c;return _("ContentSlotsDistributor",{attrs:{"slot-key":e.$parent.slotKey}},[_("h1",{attrs:{id:"pdf-表单基础概念介绍"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#pdf-表单基础概念介绍"}},[e._v("#")]),e._v(" PDF 表单基础概念介绍")]),e._v(" "),_("p",[e._v("本章节将介绍 PDF 表单的基础概念，并展示如何使用 Foxit PDF SDK for Web 提供的 API 来实现表单的基本操作。")]),e._v(" "),_("h2",{attrs:{id:"pdf-表单简介"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#pdf-表单简介"}},[e._v("#")]),e._v(" PDF 表单简介")]),e._v(" "),_("p",[e._v("PDF 表单是一种特殊类型的 PDF 文档，其包含了可以输入文本信息或选取复选框的交互式字段。。您可以从任何 PDF、文字处理器、图像文件或纸质文档创建 PDF 表单。")]),e._v(" "),_("p",[e._v("在 Foxit PDF SDK for Web 中，我们将 PDF 表单根据其结构关系划分为三大对象：Form、Field 和 Widget，分别对应于 PDF 文档中的表单、字段和表单域。")]),e._v(" "),_("ul",[_("li",[_("p",[e._v("Form 的类名为 "),_("code",[e._v("PDFForm")]),e._v(", 使用 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_doc.html#a41049bb3e62965dac18c610549895dfb",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFDoc.getForm()"),_("OutboundLink")],1),e._v(" 方法获取其实例。")])]),e._v(" "),_("li",[_("p",[e._v("Field 的类名为 "),_("code",[e._v("PDFFormField")]),e._v("，使用 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_form.html#a8ff1f06553a68b64bb4fd6a188dfb2cb",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFForm.getField"),_("OutboundLink")],1),e._v(" 和 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_form.html#a7d4b683f2a2f54917620916c80148517",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFForm.getFieldAtPosition"),_("OutboundLink")],1),e._v(" 方法获取其实例。")])]),e._v(" "),_("li",[_("p",[e._v("Widget 的类名为 "),_("code",[e._v("Widget")]),e._v("，使用 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_form_field.html#ac9f63caaf3b7b1c73c073c1305481079",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFFormField.getWidgetsCount"),_("OutboundLink")],1),e._v(" 和 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_form_field.html#a92717e4bb533ff01a7576663c5d3861e",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFFormField.getWidget"),_("OutboundLink")],1),e._v(" 方法获取其实例。请注意，Widget 是一种特殊的注解（Annot），也可以通过 "),_("code",[e._v("PDFPage")]),e._v(" 的 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_page.html#a0b9bb37d23926a13cb65ba94b91d6dae",target:"_blank",rel:"noopener noreferrer"}},[e._v("getAnnots"),_("OutboundLink")],1),e._v(" 方法获取，但是需要根据类型进行过滤。")])])]),e._v(" "),_("p",[e._v("需要特别强调的是，签名字段是一种特殊的字段类型，采用了一个独立的类 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_signature.html",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFSignature"),_("OutboundLink")],1),e._v("。"),_("code",[e._v("PDFSignature")]),e._v(" 继承自 "),_("a",{attrs:{href:"https://__API_REFERENCE_BASE_PATH__/class_p_d_f_form_field.html",target:"_blank",rel:"noopener noreferrer"}},[e._v("PDFFormField"),_("OutboundLink")],1),e._v("，并增加了一些与签名相关的接口。")]),e._v(" "),_("p",[e._v("以下图表可以用来表示这些对象之间的关系：")]),e._v(" "),_("Mermaid",{attrs:{id:"mermaid_382ee18c",graph:e.$dataBlock.mermaid_382ee18c}}),_("h2",{attrs:{id:"foxit-pdf-sdk-for-web-提供的表单功能"}},[_("a",{staticClass:"header-anchor",attrs:{href:"#foxit-pdf-sdk-for-web-提供的表单功能"}},[e._v("#")]),e._v(" Foxit PDF SDK for Web 提供的表单功能")]),e._v(" "),_("p",[e._v("您可以使用 Foxit PDF SDK for Web 提供的 API 来执行以下的表单操作：")]),e._v(" "),_("ul",[_("li",[e._v("添加或删除表单字段")]),e._v(" "),_("li",[e._v("获取或设置表单字段属性")]),e._v(" "),_("li",[e._v("导入导出表单数据")]),e._v(" "),_("li",[e._v("添加和编辑表单动作")])]),e._v(" "),_("p",[e._v("此外，您还可以通过添加 Action 来扩展表单功能，例如，使用 Action 来执行以下任务：")]),e._v(" "),_("ul",[_("li",[e._v("开发 JavaScript 脚本，为用户事件实现定制操作")]),e._v(" "),_("li",[e._v("自动格式化、计算和验证表单数据")]),e._v(" "),_("li",[e._v("实现与 Web 服务的交互")])]),e._v(" "),_("p",[e._v("这些功能为开发者在构建复杂且交互性强的 PDF 表单应用时提供了强大的工具，这些应用适用于各种场景，例如在线调查、申请表、订单表等。")])],1)}),[],!1,null,null,null);"function"==typeof a&&a(n);_.default=n.exports}}]);