剪裁图片那些事

1. 图片质量问题

- (UIImage *)scaleToSize:(CGSize)size

{

UIGraphicsBeginImageContext(size);

[self drawInRect:CGRectMake(0, 0, size.width, size.height)];

UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

return scaledImage;

}

上面的代码返回的图片显示出来会模糊,查原因,发现UIGraphicsBeginImageContext函数的问题,在iPhone有了高清屏之后,应该使用UIGraphicsBeginImageContextWithOptions();

UIGraphicsBeginImageContextWithOptions(destSize, YES, [UIScreen mainScreen].scale);

2. 缩放并且剪切的问题

如果UIImage需要剪切并且缩放,应该是先缩放再剪裁,还是先剪裁再缩放?

要先按比例剪切,再做缩放处理。顺序反过来的话得不到想要的结果。

3. @2x和@3x问题

不管使用[UIImage imageNamed:XXX]方式还是[UIImage imageWithContentsOfFile:xxx]方式加载一张xxx@3x.png图,加载成功后UIImage对象的scale属性都会是3.而且@2x和@3x的命名会影响后期处理。

如果App的引导页面图需要为适配各种屏幕进行裁剪缩放处理的话,建议命名xxx.png而不是xxx@2x.png或xxx@3x.png.

否则也得不到预想的结果。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容