itextsharp pdf解析

Itextsharp pdf parsing

为什么需要字体 [FontName.afm] 文件来解析 PDF 文件,而 itextsharp 可以解析所有 PDF?

例如 PDF 文件包含字体是新的文本,所以我的问题是它可以在不提供 [FontName].afm 文件的情况下从 PDF 文件解析该文本

这个问题交叉发布在 SO 和 iText 邮件列表上。我正在将我的答案复制到 SO 上的邮件列表:

why there is need of font files [FontName.afm] in itextsharp library

这些文件包含字体规格 (AFM = Adob​​e Font Metrics)。需要它们来计算文本片段的尺寸(高度、宽度)。 iTextSharp 附带的 14 个 AFM 文件对应于 14 种标准 Type 1 字体。这些是任何 PDF 查看器都应该能够呈现的字体,因此无需嵌入这些字体(除非字体嵌入是一项要求,例如在 PDF/A 的上下文中)。

请下载免费电子书 "The Best iText Questions on Whosebug" 并阅读有关字体部分的问题答案以获取更多信息。

另请参阅:

  • How to use Verdana Font in Stamper (iText PDF)
  • Why doesn't FontFactory.GetFont("Known Font Name", floatSize) work?

and without those font files can we extract text from PDF files and for newly introduced fontface itextsharp is useful to extract text from PDF or Not?

您不需要 AFM 文件来提取文本,因为您需要的大部分信息(例如文档中使用的每个字形的宽度)都存储在文档中。 iTextSharp 对于从 PDF 中提取文本很有用,但有时通常无法提取文本(无论您使用哪种工具)。如需更详尽的解释,请观看此视频:https://www.youtube.com/watch?v=wxGEEv7ibHE

另请参阅:

  • English text extracted using itextpdf is not understandable
  • Text extraction is empty and unknown for text has type3 font using PDFBox,iText (difficult topic!)