如何在iphone中使用水平滑动逐页显示PDF?

时间:2010-09-20 07:24:44

标签: iphone pdf uitouch horizontal-scrolling cgpdfdocument

我想逐页创建PDF阅读器。

我知道如何使用UIWebView来显示PDF,但它会加载整个PDF并希望一次显示一页。

PDF存储在本地。 应根据水平滑动加载下一个和上一个PDF页面。

如何显示单个页面以及水平滑动和缩放功能? 这种问题的最佳方法是什么? 有没有这方面的教程?

编辑: 我已经使用CGPDF API逐页显示PDF。 我使用PDF页面作为图像。 但是,由于也使用了UIPageControl,因此缩放功能无法正常工作。 如何缩放这些图像以及页面控制?

2 个答案:

答案 0 :(得分:10)

您可以使用Leaves View,您可以从

找到教程

https://github.com/brow/leaves

第二个选项是FastPDFKit,您可以从

获取它

http://mobfarm.eu/

根据我的说法,更优选的是因为内存管理良好且用户友好。

修改

您可以考虑另外两个为PDF提供一些好功能的选项。

  1. Reader on Github
  2. PSPDFKit
  3. 注意: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视图,这样您就可以在水平滑动的视图中查看杂志的页面或者书。