C# 对pdfname中指定的每个constans的描述,因为我需要能够同时检索图像和文本

C# 对pdfname中指定的每个constans的描述,因为我需要能够同时检索图像和文本,c#,itextsharp,C#,Itextsharp,我在同时检索pdf文件中的图像和文本时遇到问题,我能够在pdf文件中获取图像和文本,但不能同时获取(这将导致一个问题,即是首先渲染图像还是首先渲染文本,例如在我的面板控件中?),也许你们能帮我定义一下pdfname中的每个常量意味着什么?我尝试使用pdfname.all,但它返回null,但使用pdfname.resources时,它返回procset、font和xobject。我对图像使用了xobject,但什么是procset和font(这可能是文本的样式吗?它是否有用于检索文本的pdfna

我在同时检索pdf文件中的图像和文本时遇到问题,我能够在pdf文件中获取图像和文本,但不能同时获取(这将导致一个问题,即是首先渲染图像还是首先渲染文本,例如在我的面板控件中?),也许你们能帮我定义一下pdfname中的每个常量意味着什么?我尝试使用pdfname.all,但它返回null,但使用pdfname.resources时,它返回procset、font和xobject。我对图像使用了xobject,但什么是procset和font(这可能是文本的样式吗?它是否有用于检索文本的pdfname.text)

提前感谢。

首先

我在同时检索pdf文件中的图像和文本时遇到问题

对于此任务,您应该使用iText(Sharp)解析器API。在iTextSharp中,您基本上实现了(一个接口,其中包含用于通知内容流中(位图)图像和文本片段的方法)并使用它处理页面内容:

PdfReader reader = new PdfReader(...);
PdfReaderContentParser parser = new PdfReaderContentParser(reader);
int pageNumber = [... the number of the page you are interested in; may be a loop variable ...];

IRenderListener listener = new [... your IRenderListener implementation ...]
parser.ProcessContent(pageNumber, listener);
你问

是先渲染图像还是先渲染文本,例如在“我的面板”控件中

IRenderListener
方法还检索有关位图或文本片段位置的信息

对于如何在侦听器中组合文本片段的想法,您可能希望从iTextSharp中的实现或呈现中获得启发

如果你坚持手工操作的话

也许你们能帮我定义一下pdfname中的每个常量意味着什么

您可以在PDF规范ISO 32000-1:2008中找到名称对应的定义,Adobe提供了该规范的副本

使用pdfname.resources时,它返回procset、font和xobject。我在图像中使用了xobject,但什么是procset和font(这可能是文本的样式吗

本规范第7.8.3节解释了页面资源词典的内容

它是否有用于检索文本的pdfname.text)

您将在第9节中找到如何在页面内容流和XObject中显示测试