【发布时间】:2011-09-18 00:34:30
【问题描述】:
给定一个 pdf 文档的页面,我希望能够使用 objetive-C 找到文本的边距。
我意识到已经有很多与CGPDF... 相关的问题,但我还没有找到任何有用的东西。我还查看了 PDF 规范文档。我确定它一定在某个地方,但我还没有找到它。
示例
我创建了一个左右边距各为 2.5 厘米的 Word 文档。然后我打印成pdf。拿这个pdf,有没有办法算出文字的宽度(即左右页边距)?
背景
万一我找错树了,我问这个问题的原因是能够像 iBooks 缩放一样缩放。如果您双击 iBooks,它会将您缩放到主体的宽度。这在 Mac 的 Preview 应用程序中也是如此(按“Zoom to Fit”)。
最初的想法
我首先想到的是 kCGPDFBleedBox 之类的 PDF Boxes (CGPDFPage) 可能会有所帮助,但它看起来对我的情况没有帮助。
更新
我只关心页面的正文。可能不在此范围内的图像等不会打扰我。
相关帖子
Fast and Lean PDF Viewer for iPhone / iPad / iOs - tips and hints?
【问题讨论】:
-
我认为最好的办法是查看页面上所有元素的边界框。这也会计算页眉/页脚/数字等内容,但您对此无能为力。
-
我会对正文的正文感到满意。我将更新我的问题以反映这一点...
-
没有简单的方法可以做到这一点。 AIUI,PDF几乎完全是一种打印格式——一堆矢量数据、位图数据,可能还有一些文本。许多 PDF 阅读器无法正确选择文本(多列文档或任何使用 pdflatex 格式化的内容往往会导致 IME 出现问题);我不希望找到“正文”矩形更容易。