【发布时间】:2012-02-12 02:07:25
【问题描述】:
我需要捕获特定的 UIView ,但结果是低质量的如何解决这个问题并提高质量?
UIGraphicsBeginImageContext(captureView.bounds.size);
[captureView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIImageWriteToSavedPhotosAlbum(screenshot, nil, nil, nil);
UIGraphicsEndImageContext();
【问题讨论】:
-
你也可以试试这个 UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0);
-
当你说“低质量”时,你到底是什么意思?图像看起来与屏幕上的不一样?您是否使用视网膜显示器,但捕获的图像不那么清晰?图像是否有颗粒感或变形?它到底有什么问题?
-
您能否提供正在捕获的内容以及生成的图像的屏幕截图?
-
您在致电
UIGraphicsGetCurrentContext之前是否将建议的UIGraphicsBeginImageContextWithOptions放在了前面? -
您确定问题出在您的捕获代码中吗?
UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 0.0);直接截图。我的意思是:您如何测试结果-通过从代码中显示它们还是检查文件?你是在模拟器还是实际设备上这样做...