如何在 iPhone 应用程序中使用 CGPDFScanner 查找 pdf 文档字体?
Posted
技术标签:
【中文标题】如何在 iPhone 应用程序中使用 CGPDFScanner 查找 pdf 文档字体?【英文标题】:How to find the pdf document font using CGPDFScanner in iphone app? 【发布时间】:2012-02-09 09:19:41 【问题描述】:我在 CGPDFScanner 的 Tf 回调方法中得到“F1.0”。 但我不知道如何继续使用“F1.0”
经过一番搜索,我知道它是字体细节之王。 我如何解码这个值。
【问题讨论】:
【参考方案1】:字体对象位于 /Resources 字典中。如果你正在解析页面内容流,你会得到这样的字体对象:从 Page 字典中获取 /Resources 字典。从 /Resources 字典中获取 /Font 字典。从 /Font 字典中获取带有标签 /F1.0 的字体字典。 基本上代码是这样的(你需要添加错误处理代码,因为这些字典可以为NULL):
CGPDFDictionaryRef pageDictionary = CGPDFPageGetDictionary(pdfPage);
CGPDFDictionaryRef resourcesDictionary;
CGPDFDictionaryGetDictionary(pageDictionary, "Resources", &resourcesDictionary);
CGPDFDictionaryRef fontDictionary;
CGPDFDictionaryGetDictionary(resourcesDictionary, "Font", &fontDictionary);
CGPDFDictionaryRef f10FontDictionary;
CGPDFDictionaryGetDictionary(fontDictionary, "F1.0", &f10FontDictionary);
f10FontDictionary 将包含字体对象。此词典中的条目在 PDF 规范中有详细说明。
【讨论】:
感谢您的回复。但我不知道如何进入下一个级别。表示如何找到 f10FontDictionary 详细信息以获取更多规范。你能给我更多的代码吗?。 此处提供 PDF 规范:adobe.com/devnet/pdf/pdf_reference_archive.html。字体对象字典中的条目在 5.4、5.5、5.6 节中列出。 (PDF 规范 1.7)以上是关于如何在 iPhone 应用程序中使用 CGPDFScanner 查找 pdf 文档字体?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iTunes Connect 中查看我的 iphone 应用程序的使用情况?
如何在 iPhone 应用程序中使用 Superfeedr?