我的任务是使用C#将用户名添加到可填写的pdf(在边距,而不是字段)。我尝试使用很多第三方dll添加文本注释,如iTextSharp,spire.pdf ....
但是,每当我在可填写的pdf上添加文本并保存它时,可填写的字段就会消失。有谁知道如何完成这个任务?感谢。
答案 0 :(得分:0)
似乎你使用破碎的pdf文件,因为它是一项简单的任务。 我不知道你的代码是如何看待你尝试过的工具。我使用Apitron PDF Kit。无论如何,我认为所有工具看起来都类似。 请参阅以下代码:
using System;
using System.Collections.Generic;
using System.IO;
using Apitron.PDF.Kit.FixedLayout;
using Apitron.PDF.Kit.FixedLayout.Content;
using Apitron.PDF.Kit.FixedLayout.PageProperties;
using Apitron.PDF.Kit.Interactive.Annotations;
using Apitron.PDF.Kit.Interactive.Forms;
public void TestAcroForm_TextBlock()
{
using (Stream stream = new FileStream("filename.pdf", FileMode.Open, FileAccess.Read, FileShare.Read))
{
using (FixedDocument document = new FixedDocument())
{
Page page = document.Pages[0];
TextField textField = new TextField("UserName", "This is user name");
TextFieldView annotation = new TextFieldView(textField, new Boundary(100, 100, 300, 130));
document.AcroForm.Fields.Add(textField);
page.Annotations.Add(annotation);
using (Stream outStream = new FileStream("filename_out.pdf", FileMode.Create, FileAccess.ReadWrite))
{
document.Save(outStream);
}
}
}
}