C#编辑可填写的表单

时间:2017-09-21 16:51:55

标签: c# pdf

我的任务是使用C#将用户名添加到可填写的pdf(在边距,而不是字段)。我尝试使用很多第三方dll添加文本注释,如iTextSharp,spire.pdf ....

但是,每当我在可填写的pdf上添加文本并保存它时,可填写的字段就会消失。有谁知道如何完成这个任务?感谢。

1 个答案:

答案 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);
                }
            }
        }
    }