在iOS创建PDF文件中简单介绍了如何生成pdf文件。现在有需求要显示PDF文档。看了一下Apple的API,大概有两种方法:
使用WebView,可以直接读取PDF,这个比较简单,可参见:Z简单的WebView应用,缺点是自定义的能力较弱,优点是简单,像读取网页一样;
使用自定义的UIView,需要继承UIView,自定义效果很好,问题是需要了解和使用的API较多。
本文只说明自定义UIView的方法。实现的在iPad模拟器上的效果:
本文方法参考了:官方文档。见A function that draw a PDF page的代码部分:
void MyDisplayPDFPage (CGContextRef myContext,
size_t pageNumber,
const char *filename)
{
CGPDFDocumentRef document;
CGPDFPageRef page;
CGRect box;
document = MyGetPDFDocumentRef (filename);// 1
page = CGPDFDocumentGetPage (document, pageNumber);// 2
CGContextDrawPDFPage (myContext, page);// 3
CGPDFDocumentRelease (document);// 4
}