2013-03-14 44 views
0

我试图从UIWebView生成PDF报告。使用Graphics Contexts我可以得到屏幕框架的图像并以PDF格式绘制。在CURENT方法IOS - 从iphone中的UIwebview生成PDF

的问题是, 图像是模糊的(质量差) 因此该报告的PDF无法读取。

如何获得高质量的屏幕画面图像?或者有没有其他更好的解决方案来解决我的问题?

P.S.报告包含多种背景颜色和图像,我认为很难直接在PDF中绘制它们。

回答

0
+ (UIImage *) imageWithView:(UIView *)view 
{ 
    UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0); 
    [view.layer renderInContext:UIGraphicsGetCurrentContext()]; 

    UIImage * img = UIGraphicsGetImageFromCurrentImageContext(); 

    UIGraphicsEndImageContext(); 

    return img; 
} 
+0

感谢您的回答。目前的图像是好的,但PDF是blured – 2013-03-14 13:02:58

+0

审查@wesley答案 – Rushabh 2013-03-14 13:05:29

0
NSMutableData *pdfData = [NSMutableData data]; 
UIGraphicsBeginPDFContextToData(pdfData, webview.bounds, nil); 
UIGraphicsBeginPDFPage(); 
CGContextRef pdfContext = UIGraphicsGetCurrentContext(); 
[webview.layer renderInContext:pdfContext]; 
UIGraphicsEndPDFContext(); 

你试过这样吗?

+0

谢谢4 da答复..我的网络视图的滚动高度是1500 ..所以我必须捕捉部分屏幕部分和加入。 – 2013-03-14 10:01:35

+0

然后把你想要的x,y坐标作为框架作为单独的uiview,然后将其渲染为pdf – wesley 2013-03-14 10:12:43