我有一些代码可以捕获屏幕图像,然后根据一些边界值对其进行裁剪:

UIGraphicsBeginImageContextWithOptions(self.mainView.bounds.size, NO, 0.0);
[self.mainView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *comicImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

UIGraphicsBeginImageContextWithOptions(CGSizeMake(boundary.width, boundary.height), NO, 0.0);
[comicImage drawAtPoint:CGPointMake(-boundary.xMin, -boundary.yMin)];
comicImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

我想知道的是,是否使用上述方法生成的低分辨率低质量图像?有没有更好的方法可以做到这一点?

最佳答案

也许您可以使用以下代码

  UIGraphicsBeginImageContextWithOptions(size, NO, [UIScreen mainScreen].scale);

关于ios - 抓取屏幕图像然后进行裁剪后,我是否会失去分辨率?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33381889/

10-12 00:31