0

我想在标记该字段之前以编程方式从 PDF 中的表单字段中删除“滚动长文本”字段。我想在任何时候为给定的表单字段启用此设置的字段。我最近遇到了类似的问题,并使用我在这篇文章底部发布的解决方案解决了这个问题:ITextSharp: Remove character Limit from a form field

我认为我应该能够在同一区域执行此操作,但我不确定我需要寻找哪个 PdfName 设置来检测(并删除)此设置。

提前致谢!

4

1 回答 1

1

根据PDF 规范,部分12.7.4.3交互功能 -> 交互表单 -> 字段类型 -> 文本字段,您要设置字段标志 ( Ff) 值。该值是位标记,位置 24 是“DoNotScroll”标记。位置 24 将是 binary1000 0000 0000 0000 0000 0000或 hex 0x800000。使用这个和其他帖子中的代码,您可以添加它,它应该可以满足您的需求:

if (AnnotationDictionary.Contains(PdfName.FF)) {
    int Ff = AnnotationDictionary.GetAsNumber(PdfName.FF).IntValue;
    int doNotScrollBit = 0x800000;
    Ff = doNotScrollBit | Ff;
    AnnotationDictionary.Put(PdfName.FF, new PdfNumber(Ff));
}
于 2012-04-24T13:58:35.727 回答