【发布时间】:2018-08-26 09:44:27
【问题描述】:
我有一个设置为使用 pageViewController 的 PDFView:
let pdfView = PDFView()
let pdfDoc = PDFDocument(url: Bundle.main.url(forResource: "test", withExtension: "pdf")!)
pdfView.document = pdfDoc
pdfView.autoScales = true
pdfView.displayDirection = .horizontal
pdfView.usePageViewController(true, withViewOptions: [:])
每当我滑动到下一页时,都会说下一页模糊了半秒钟,然后才清晰呈现。这很烦人。我可以以某种方式预加载页面吗?我在文档中没有找到任何属性/方法。
(有趣的是,我在MacOS 上的Preview 在全屏模式下遇到了完全相同的问题[从永远开始,在我拥有的每台Mac 上])
它不依赖于 pdf(文件)大小。我尝试的每个 pdf 都会出现问题。
感谢您的帮助
【问题讨论】:
-
你可以试试这个代码吗:如果让 documentURL = Bundle.main.url(forResource: "download", withExtension: "pdf"), let document = PDFDocument(url: documentURL), let page = document.page(at: 0) { pdfView?.document = document pdfView?.autoScales = true pdfView?.backgroundColor = UIColor.lightGray pdfView?.displayDirection = .horizontal pdfView?.displayMode = .singlePageContinuous pdfView?.usePageViewController(是的,withViewOptions: [:]) }
-
还是同样的问题。这也只是添加了
pdfView?.displayMode = .singlePageContinuous,为什么不使用let page = document.page(at: 0)? -
这段代码非常适合我。我还有一些关于 page 的其他代码,我只是给了你 pdf 加载部分代码。您是否在设备上测试过您的代码?
-
啊好的。是的,我在 Ipad Pro 2、iPhone 7 和模拟器上进行了测试。在每台设备上都是一样的。很奇怪
-
我尝试使用示例 pdf 捕捉它呈现的那一刻:imgur.com/a/wtBxR
标签: ios swift performance pdfkit