0

我正在使用 CGContextDrawPDFPage 类在我的应用程序中呈现 PDF 没有任何问题。但是,加载书籍所花费的时间要多一些,并且呈现页面所花费的时间与 PDF 中的页数成正比。

在我的例子中,PDF 可以包含 500 到 1000 页之间的任何地方。因此,我的 PDF 的加载时间正在增加。渲染第一页几乎需要 10 秒,从用户体验方面来看,这真的很糟糕。并且此时间仅在第一次加载书籍期间使用。在我看来,延迟是因为我试图一次阅读整个 PDF。

有没有一种方法可以让我逐部分阅读 PDF,以便渲染 PDF 的初始时间更快。

谢谢。

4

2 回答 2

1

我建议你使用大量的预缓存来解决问题。根据我的经验,分析 PDF(用于纵横比、注释等)需要一些时间。画画也很慢。

我通过动态预生成图像解决了这个问题,并尽可能显示它们。当然,这也很棘手,例如,永远不要尝试同时在屏幕上和屏幕外渲染,绘制复杂 pdf 时的内存使用量超出比例,同时执行两个操作可能会使您的应用程序崩溃。

于 2011-08-26T11:31:48.290 回答
1

你有没有运行 Instruments 来查看时间花在了哪里?

于 2011-08-19T17:36:01.530 回答