我使用的是PDF Sharp,只有一个问题。我无法重命名表单字段。我们有一个名为'x'的字段,在对字段'x'应用操作后,需要将其重命名为字段'y'。
我已经看过很多关于如何使用 itextSharp 执行此操作的文档。不幸的是我的公司不能使用它们,因此我正在寻找使用 PDF Sharp 的解决方案。
有什么想法吗?
答案 0 :(得分:0)
我能够通过PdfSharp重命名表单字段,如下所示:
public void RenameAcroField(PdfAcroField field, string newFieldName)
{
field.Elements.SetString("/T", newFieldName);
}
有点棘手,但对我的情况有用。希望它会有所帮助。
答案 1 :(得分:0)
这可以让您了解如何执行字段重命名
var uniqueIndex = Guid.NewGuid();
var fields = pdfDocument.AcroForm.Fields;
var fieldNames = fields.Names;
for (int idx = 0; idx < fieldNames.Length; ++idx)
{
var fieldName = fieldNames[idx];
var field = fields[fieldName];
field.Elements.SetName($"/{fieldName}", $"{fieldName}_{uniqueIndex}");
}
答案 2 :(得分:0)
PDFsharp 1.50.5147的VB.NET版本
Dim i = 0
While i < pdfDoc.AcroForm.Fields.Count
pdfDoc.AcroForm.Fields(i).Elements.SetString("/T", "formField" & i)
i += 1
End While