C# 设置PDF表单不可编辑、或提取PDF表单数据
|
PDF表单是PDF中的可编辑区域,允许用户填写指定信息。当表单填写完成后,有时候我们可能需要将其设置为不可编辑,以保护表单内容的完整性和可靠性。或者需要从PDF表单中提取数据以便后续处理或分析。
之前文章详细介绍过如何使用免费Spire.PDF库通过C# 创建、填写表单,本文将继续介绍该免费.NET PDF库支持的另外两种操作PDF表单的功能,即:
- 使用C# 设置PDF表单不可编辑(PDF扁平化)
- 使用C# 提取PDF表单数据
免费库安装(2种方法):
Free Spire.PDF for .NET 免费库支持两种安装方式:
https://www.e-iceblue.com/Download/download-pdf-for-net-free.html
使用C# 设置PDF表单不可编辑(PDF扁平化)
PDF 表单如文本框、复选框、组合框等都是可编辑或可更改状态,如果想要锁定这些区域,我们需要将PDF表单设置为不可编辑状态,即PDF扁平化。在Free Spire.PDF中, 我们可以通过将其提供的 PdfDocument.Form.IsFlatten 属性设置为 "true" 来锁定PDF表单不可编辑。
简单代码示例:- using Spire.Pdf;
-
- namespace FlattenAllFormFields
- {
- class Program
- {
- static void Main(string[] args)
- {
- //加载PDF文件
- PdfDocument pdf = new PdfDocument();
- pdf.LoadFromFile("PDF表单.pdf");
-
- //设置所有表单不可编辑
- pdf.Form.IsFlatten = true;
-
- //保存生成文件
- pdf.SaveToFile("扁平PDF.pdf");
- }
- }
- }
复制代码 以上示例一键锁定了PDF文件中的所有表单,如果仅需锁定某个指定的表单域,可以参考如下代码片段:- //获取PDF表单
- PdfFormWidget formWidget = (PdfFormWidget)pdf.Form;
-
- //通过表单名获取指定表单域
- PdfField form = formWidget.FieldsWidget["姓名"];
-
- //通过索引获取指定表单域
- PdfField form = formWidget.FieldsWidget.List[0] as PdfField;
-
- //设置表单不可编辑
- form.Flatten = true;
复制代码
使用C# 提取PDF表单数据
在Free Spire.PDF中,每种表单域都提供了对应的类。要实现PDF表单数据的提取,我们需要先确定表单域的类型,然后再使用相应类下的属性来提取它们的值。
完整C#示例代码:提取PDF表单的效果图:
总结
免费Spire.PDF支持多种对PDF表单的操作,使用它,我们可以通过C# 轻松实现锁定PDF表单以确保表单不被篡改或编辑,或者通过C# 快速提取PDF表单数据并用于各种用途,如数据分析、报告生成等。
如有兴趣了解更多.NET程序中操作PDF文档的示例,可点击:Spire.PDF中文教程
来源:https://www.cnblogs.com/Yesi/p/18252698
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|
|
|
发表于 2024-6-17 20:20:52
举报
回复
分享
|
|
|
|