将UIView的上下文的位图内容复制到另一个UIView的内容

时间:2010-04-20 07:32:24

标签: iphone objective-c quartz-graphics

基本上我想做的是将已经渲染的内容(使用CGContextDrawPDFPage()绘制到UIView的图形上下文中的PDF)复制到类似的UIView上,而不必重新渲染PDF。我的想法是,我可以在UIView上执行动画变换,然后更准确地重新渲染PDF。对于两个UIViews,我使用大于屏幕的CATiledLayer,以便在用户放大后更容易重新呈现PDF,如果这有任何区别的话。

任何提示?我有点迷失在这里。

1 个答案:

答案 0 :(得分:1)

假设您使用类似于以下内容的代码在图形上下文中呈现PDF页面

CGPDFDocumentRef document = CGPDFDocumentCreateWithURL (filename_url);
CGPDFPageRef page = CGPDFDocumentGetPage (document, pageNumber); 
CGContextDrawPDFPage (context, page); 
CGPDFDocumentRelease (document);

此代码将pdfView的内容保存到UIImage

UIGraphicsBeginImageContext(pdfView.bounds.size);
[pdfView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *pdfViewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();