剪裁图片那些事

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]方式加载一张[email protected]图,加载成功后UIImage对象的scale属性都会是3.而且@2x和@3x的命名会影响后期处理。

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

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

你可能感兴趣的:(剪裁图片那些事)