【问题标题】:Crop PDFContext in Objective C在 Objective C 中裁剪 PDFContext
【发布时间】:2015-09-07 20:53:00
【问题描述】:

我想在 Mac OS x 应用程序的 Objective-C 中创建一个无限的 PDF 上下文,然后在我知道制作的大小后在保存之前对其进行裁剪。用 CGPDFContextCreateWithURL 很容易创建一个无限大的 PDFContext,但是用 Preview 之后就无法显示了。

【问题讨论】:

    标签: objective-c cocoa pdf crop


    【解决方案1】:

    在类似的情况下,我用另一种方法解决了类似的问题。

    在第一步中,我计算了一些(自定义)元文件,其中我刚刚注意到图形将具有哪些图形元素及其属性和坐标(无限的世界坐标,与任何输出设备或格式无关)。 通过这样做,我掌握了曾经使用过的最大 x 和 y 坐标。

    我没有在 iOS 上这样做,但如果我愿意,那么我肯定会使用一些核心数据或只是一个普通的 sqlite 表。

    下一步是将元坐标分解为合理的拼贴,在您的情况下,每个拼贴都与类似 pdf 页面的内容相关。这些图块将考虑目标纸张格式、横向或纵向等的 x/y 比率。您可能希望用户选择并提供预览页面。

    然后我最终会逐页呈现 pdf。当您忽略所有完全超出当前页面范围的图形对象时,渲染应该非常快。通过每个对象左上角坐标的 x 和 y 对元项目进行一些智能排序,可以进一步提高性能。

    我想如果你做得对,你会惊讶于它的运行速度有多快。

    【讨论】:

      猜你喜欢
      • 2011-04-23
      • 2022-12-19
      • 1970-01-01
      • 2015-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-26
      • 2012-06-03
      相关资源
      最近更新 更多