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