[PDF] - 获取 RadioButtonList 控件值的方法

Posted Hello World!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[PDF] - 获取 RadioButtonList 控件值的方法相关的知识,希望对你有一定的参考价值。

背景

目标是通过 iTextSharp 读取 PDF 模板,填充内容后以生成新 PDF 文件。
利用 福昕PDF编辑器个人版 可以获取到 RadioButtonList 的组名,但是获取不到每一个 RadioButton 的 Value,因而无法进一步对单选框控件赋值。

解决

使用 Adobe LiveCycle Designer 可以读取到 PDF 表单设计元素,找到对应的 RadioBUttonList 元素,即可找到对应的 Value。

范例

var templateFile = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath) + @"\\template.pdf";
using (var reader = new PdfReader(templateFile))
{
	var tempPdf = Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath) + string.Format(@"\\output\\{0}.pdf", Guid.NewGuid());
	using (var stamper = new PdfStamper(reader, new FileStream(tempPdf, FileMode.Create)))
	{
		stamper.SetEncryption(null, null, PdfWriter.AllowCopy | PdfWriter.AllowPrinting, true);
		stamper.Writer.CloseStream = false;
		var form = stamper.AcroFields;

		form.SetField("form1[0].#subform[0].name[0]", "UserName");
		form.SetField("form1[0].#subform[0].gender[0]", "Male");
		
		stamper.FormFlattening = true;
		stamper.Close();
	}
}

ALD

以上是关于[PDF] - 获取 RadioButtonList 控件值的方法的主要内容,如果未能解决你的问题,请参考以下文章

如何获取创建的pdf报告的路径并分享?

获取 PDF 页面长度

获取 PDF 内容

[PDF] - 获取 RadioButtonList 控件值的方法

阅读 PDF 时如何从这些回调中获取值?

使用itext获取pdf模板,生成pdf