扁平化 PDF 表单域意味着将交互式表单域转换为不可编辑或填写的静态内容。一旦表单域被扁平化,用户将无法修改或更改其中已填写的数据。这种转换过程可以确保已填写的表单数据的永久性和不可篡改性,为将来的使用提供了可靠的参考。本文将介绍如何使用 Python 和 Spire.PDF for Python 扁平化 PDF 中的表单域。
安装 Spire.PDF for Python
本教程需要用到 Spire.PDF for Python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.PDF
如果您不清楚如何安装,请参考此教程: 如何在 Windows 中安装 Spire.PDF for Python
Python 扁平化 PDF 中的所有表单域
Spire.PDF for Python 提供的 PdfDocument.Form.IsFlatten 属性,支持扁平化PDF文件中的所有表单域。具体步骤如下。
- 创建 PdfDocument 类的对象。
- 使用 PdfDocument.LoadFromFile() 方法加载 PDF 文件。
- 通过将 PdfDocument.Form.IsFlatten 属性设置为 True 来扁平化 PDF 文件中的所有表单域。
- 使用 PdfDocument.SaveToFile() 方法保存结果文件。
- Python
from spire.pdf.common import *
from spire.pdf import *
# 指定输入和输出PDF文件路径
input_file = "表单.pdf"
output_file = "扁平所有域.pdf"
# 创建PdfDocument类的对象
doc = PdfDocument()
# 加载PDF文件
doc.LoadFromFile(input_file)
# 扁平化PDF文件中的所有表单
doc.Form.IsFlatten = True
# 保存结果文件
doc.SaveToFile(output_file)
doc.Close()
Python 扁平化 PDF 中的特定表单域
要在 PDF 文件中扁平化特定的表单域,你可以使用 PdfField.Flatten 属性。具体步骤如下。
- 创建 PdfDocument 类的对象。
- 使用 PdfDocument.LoadFromFile() 方法加载 PDF 文件。
- 使用 PdfDocument.Form 属性获取 PDF 文件的表单。
- 使用 PdfFormWidget.FieldsWidget.get_Item() 方法通过索引或名称获取特定的表单。
- 通过将 PdfField.Flatten 属性设置为 True 来扁平化该表单。
- 使用 PdfDocument.SaveToFile() 方法保存结果文件。
- Python
from spire.pdf.common import *
from spire.pdf import *
# 指定输入和输出PDF文件路径
input_file = "表单.pdf"
output_file = "扁平特定域.pdf"
# 创建PdfDocument类的对象
doc = PdfDocument()
# 加载PDF文件
doc.LoadFromFile(input_file)
# 获取PDF文件的表单
loadedForm = doc.Form
# 通过索引或名称获取特定的表单
formWidget = PdfFormWidget(loadedForm)
form = formWidget.FieldsWidget.get_Item(1)
# form = formWidget.FieldsWidget.get_Item("地址")
# 扁平化特定的表单
form.Flatten = True
# 保存结果文件
doc.SaveToFile(output_file)
doc.Close()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。