如何从pdf文档的文本框注释中获取值

问题描述 投票:1回答:2

我有一个pdf文档,里面有2种类型的注释列表:1.矩形2.文本框

<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9ZektLeC5qcGcifQ==” alt =“在此处输入图像描述”>

我想使用c#和itextsharp从文本框中获取值。

c# pdf itextsharp
2个回答
5
投票

您指的文本框和矩形称为注释。注释被定义为词典,并且每页列出。

换句话说:您需要创建一个PdfReader实例并从每个页面获取ANNOTS

PdfReader reader = new PdfReader("your.pdf");
for (int i = 1; i <= reader.NumberOfPages; i++) {
    PdfArray array = reader.GetPageN(i).GetAsArray(PdfName.ANNOTS);
    if (array == null) continue;
    for (int j = 0; j < array.Size; j++) {
        PdfDictionary annot = array.GetAsDict(j);
        PdfString text = annot.GetAsString(PdfName.CONTENTS);
        ...
    }
}

在上面的代码示例中,我有一个名为PdfDictionaryannot,可以从中提取目录。您可能也对其他条目感兴趣(例如,注释名称,如果有的话)。如果annot条目不是您想要的,请检查Contents对象中可用的所有键。

将圆点替换为您要对文本进行的任何处理。 PdfString有不同的方法可以显示其内容。

免责声明:我是iText的原始开发人员(我一直认为人们已经知道这一点,但是由于没有添加此免责声明,我曾一度被否决)。


0
投票

如何从注释中获取主题

© www.soinside.com 2019 - 2024. All rights reserved.