【发布时间】:2018-07-11 09:08:20
【问题描述】:
我编写了一个脚本,它解析 PDF 文件中的信息并将其输出到 HTML。它是用 Python 编写的,使用 pdfminer。
在某些文本段上,字体样式可能具有语义意义。例如:粗体、斜体和颜色应该触发不同的行为。 Pdfminer 为脚本提供字体名称,但不提供颜色,而且它还有许多其他问题;所以我正在开发该程序的 Swift 版本,使用 Apple 的 PDFKit 来提取相同的功能。
我现在发现我遇到了相反的问题。虽然 PDFKit 使检索颜色变得容易,但检索原始字体名称似乎并不明显。 PDFSelection 对象具有 attributedString 属性,但对于我的计算机上未安装的字体,NSFont 对象是 Helvetica。当然,有问题的字体相当昂贵,仅仅为了这个目的而获得一个副本将是一种糟糕的形式。
没有下降到CGPDFContentStream(对于我想要的东西来说,方式太大了),有没有办法获得原始字体名称?我提前知道字体会是什么,我可以利用它来发挥我的优势吗?
【问题讨论】: