我想逐页创建 PDF 阅读器。
我知道如何使用 UIWebView 来显示 PDF,但它会加载整个 PDF 并希望一次显示一页。
PDF 存储在本地。应根据水平滑动加载下一个和上一个 PDF 页面。
如何显示单个页面以及水平滑动和缩放功能?解决此类问题的最佳方法是什么?有这方面的教程吗?
编辑:我使用 CGPDF API 逐页显示 PDF。我正在使用 PDF 页面作为图像。但是缩放不能正常工作,因为 UIPageControl 也被使用。如何缩放这些图像以及页面控制?
我想逐页创建 PDF 阅读器。
我知道如何使用 UIWebView 来显示 PDF,但它会加载整个 PDF 并希望一次显示一页。
PDF 存储在本地。应根据水平滑动加载下一个和上一个 PDF 页面。
如何显示单个页面以及水平滑动和缩放功能?解决此类问题的最佳方法是什么?有这方面的教程吗?
编辑:我使用 CGPDF API 逐页显示 PDF。我正在使用 PDF 页面作为图像。但是缩放不能正常工作,因为 UIPageControl 也被使用。如何缩放这些图像以及页面控制?
您可以使用 Leaves View,您可以从
https://github.com/brow/leaves
第二个选项是 FastPDFKit,你可以从
在我看来,叶子更可取,因为内存管理很好,而且对用户更友好。
编辑:
您可以考虑另外两个选项,它们为 PDF 提供了一些好的功能。
注意:PSPDFKit 不是免费的。
编辑: 从 iOS 5 开始,您可以像 iBooks 一样添加滑动页面的效果。为此,您可以使用UIPageViewController。要获得一些基本的想法,只需从您的 Xcode 模板创建一个带有基于页面的应用程序的应用程序,或者您可以参考此链接。
您将绘制 PDF 页面 (CGContextDrawPDFPage) 的 tiledLayer 作为 subLayer 添加到 UIView,然后将其作为子视图添加到 UIScrollView。这样你就有了一个PDF页面,你可以通过捏它来缩放它,你可以滚动。
假设您创建了一个 PDFViewController 类:
[myContentView.layer addSublayer:tiledLayer]; ... [scrollView addSubview:myContentView]; ... [self.view addSubview:scrollView];
然后你应该创建 MagazineViewController 类,在其中你有一个大的水平 UIScrollView,你可以从包含页面的 PDFViewController 创建视图,这样你就有一个可以水平滑动并查看杂志或书籍页面的视图。