如何在iPhone中的CALayers上缓冲PDF页面

时间:2011-09-13 12:16:07

标签: iphone ipad pdf calayer pdf-rendering

我正在处理PDFReader应用程序。我正在使用CALayer来呈现pdf内容。目前正在一次呈现一个pdf页面并显示在可见视图上。我想缓冲几页(比如一个当用户正在阅读当前页面时,请提前提前一页和下一页(例如)。任何人都可以建议我更好地实现这种缓冲机制吗?提前感谢

2 个答案:

答案 0 :(得分:2)

您可以查看iOS的这个开源PDF查看器,它实现了您询问的功能:http://www.vfr.org/2011/09/pdf-reader-viewer-v2-2/

答案 1 :(得分:0)

如果您想在后台绘制一些内容,可以查看使用Grand Central Dispatch API,并使用Core Graphics命令进行绘图。您需要注意线程安全性,例如在尝试将结果推送到显示器之前检查/等待背景图纸完成。

我找到了一个非常有用的帖子Image manipulation and drawing using Quartz in the background threads,确保你只使用线程安全命令来创建绘图上下文(该示例创建了一个位图上下文,但显然你会想要创建一个PDF上下文CGPDFContextCreate或类似的。)