You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PdfSharp 6.1.1中PdfSignatureField构造函数报错问题

解决PdfSharp 6.1.1中PdfSignatureField构造函数不存在的问题

问题背景

基于.NET 8 + Blazor InteractiveServer开发,使用PdfSharp 6.1.1生成PDF时,尝试创建PdfSignatureField签名字段,无论使用无参、带PdfDocument、或带PdfDocument+PdfPage+XRect的构造方式,均提示“不存在对应参数数量的构造函数”错误。

原因

PdfSharp 6.x版本重构了表单字段的创建逻辑,PdfSignatureField不再提供公开的构造函数,必须通过PdfAcroForm的字段集合来创建实例。

正确实现代码

// 假设已初始化PdfDocument和目标PdfPage
PdfDocument document = new PdfDocument();
PdfPage page = document.AddPage();

// 获取或创建文档的AcroForm
PdfAcroForm acroForm = document.AcroForm ?? document.AddAcroForm();

// 定义签名字段的位置与尺寸(X/Y坐标、宽度、高度)
XRect sigRect = new XRect(150, 700, 300, 60);

// 通过AcroForm创建签名字段
PdfSignatureField sigField = acroForm.Fields.AddSignatureField("SignatureFieldName", page, sigRect);

// 可选:配置签名字段的额外属性
sigField.ReadOnly = false;
sigField.Name = "MyDigitalSignature";

额外说明

  • 若需要后续添加数字签名内容,可通过sigField对象结合证书相关API完成签名逻辑
  • 6.x版本的PdfSharp所有表单字段(如文本框、复选框)都建议通过PdfAcroForm.Fields对应的Add方法创建,而非直接实例化

内容的提问来源于stack exchange,提问作者Sunkist

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 20:22:05