首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用iTextSharp禁用扩展功能

使用iTextSharp禁用扩展功能
EN

Stack Overflow用户
提问于 2013-07-25 08:32:38
回答 1查看 6.1K关注 0票数 11

我有一个PDF模板与扩展功能启用的表单。使用iTextSharp填写此表单的字段后,具有acrobat读取器的用户将获得以下错误消息:

此文档启用Adobe中的扩展功能。文档自创建以来已经更改,扩展功能的使用不再可用。请与作者联系,以获得本文件的原件。

我在googled上搜索了一点,但是所有的帖子都提到了“启用”扩展功能,但是,我希望表单字段保持禁用的,关闭扩展功能。

这里是我使用的示例代码:

代码语言:javascript
复制
using (var existingFileStream = new FileStream(fileNameExisting, FileMode.Open))
using (var newFileStream = new FileStream(fileNameNew, FileMode.Create))
{
    // Open existing PDF
    var pdfReader = new PdfReader(existingFileStream);

    // PdfStamper, which will create
    var stamper = new PdfStamper(pdfReader, newFileStream);

    var form = stamper.AcroFields;

    var fieldKeys = form.Fields.Keys;

    foreach (string fieldKey in fieldKeys)
    {
        if (fieldKey.Equals("Retailer Name"))
            form.SetField(fieldKey, retailerName);
    }
    // “Flatten” the form so it wont be editable/usable anymore
    stamper.FormFlattening = true;

    stamper.Close();
    pdfReader.Close();
}
EN

回答 1

Stack Overflow用户

发布于 2017-05-10 03:28:04

使用PdfStamper解析器过载以附加模式填写表单

代码语言:javascript
复制
// PdfStamper, which will create
var stamper = new PdfStamper(pdfReader, fileStream, '\0', true);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17852902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档