本文将介绍如何使用spire.pdf组件删除pdf文档中的指定表单域以及所有表单域。
如下pdf文档中包含了一些文本信息和5种不同的表单域,以下示例将分别介绍如何从该pdf文档中删除第一个表单域和删除所有表单域。
删除指定表单域
c#
//创建pdfdocument实例
pdfdocument pdf = new pdfdocument();
//载入pdf文档
pdf.loadfromfile(@"input.pdf");
//获取文档中的表单域
pdfformwidget formwidget = pdf.form as pdfformwidget;
//获取并删除第一个表单域
pdffield textbox = formwidget.fieldswidget.list[0] as pdftextboxfieldwidget;
formwidget.fieldswidget.remove(textbox);
//通过表单域的名称获取并删除第一个表单域
//pdffield field = formwidget.fieldswidget["text1"];
//formwidget.fieldswidget.remove(field);
//删除index为0的表单域,即第一个表单域
//formwidget.fieldswidget.removeat(0);
//保存文档
pdf.savetofile("deleteparticularfield.pdf");
vb.net
'创建pdfdocument实例
dim pdf as new pdfdocument()
'载入pdf文档
pdf.loadfromfile("input.pdf")
'获取文档中的表单域
dim formwidget as pdfformwidget = trycast(pdf.form, pdfformwidget)
'获取并删除第一个表单域
dim textbox as pdffield = trycast(formwidget.fieldswidget.list(0), pdftextboxfieldwidget)
formwidget.fieldswidget.remove(textbox)
'通过表单域的名称获取并删除第一个表单域
'pdffield field = formwidget.fieldswidget["text1"];
'formwidget.fieldswidget.remove(field);
'删除index为0的表单域,即第一个表单域
'formwidget.fieldswidget.removeat(0);
'保存文档
pdf.savetofile("deleteparticularfield.pdf")
删除所有表单域
c#
//创建pdfdocument实例
pdfdocument pdf = new pdfdocument();
//载入pdf文档
pdf.loadfromfile(@"input.pdf");
//获取文档中的表单域
pdfformwidget formwidget = pdf.form as pdfformwidget;
//删除所有表单域
for (int i = formwidget.fieldswidget.list.count - 1; i >= 0; i--)
{
pdffield field = formwidget.fieldswidget.list[i] as pdffield;
formwidget.fieldswidget.remove(field);
}
//保存文档
pdf.savetofile("deleteallfields.pdf");
vb.net
'创建pdfdocument实例
dim pdf as new pdfdocument()
'载入pdf文档
pdf.loadfromfile("input.pdf")
'获取文档中的表单域
dim formwidget as pdfformwidget = trycast(pdf.form, pdfformwidget)
'删除所有表单域
for i as integer = formwidget.fieldswidget.list.count - 1 to 0 step -1
dim field as pdffield = trycast(formwidget.fieldswidget.list(i), pdffield)
formwidget.fieldswidget.remove(field)
next
'保存文档
pdf.savetofile("deleteallfields.pdf")