【发布时间】:2013-08-14 10:23:05
【问题描述】:
我有这段代码,其中self 是 UIImage 对象:
CGFloat scale = [sideSize floatValue] / MIN(self.size.width, self.size.height);
UIGraphicsBeginImageContextWithOptions(CGSizeMake(self.size.width*scale,self.size.height*scale), NO, 0.0);
[self drawInRect:CGRectMake(0, 0, self.size.width*scale, self.size.height*scale)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
SBLog(@"%f, %f", newImage.size.width, newImage.size.height);
return newImage;
但是当我使用函数UIImagePNGRepresentation 来获取字节数据以通过互联网传输时,我的图像字节在缩放后具有另一个大小。
当我使用[newImage CGImage] 时,在这段代码之后,我得到了相同的错误尺寸。
所以,我认为UIImagePNGRepresentation 使用 CGImage 从图像中获取数据字节。
那么,如何做到 UIImage 和 CGImage 相同呢?
【问题讨论】:
-
“如何做相同的 UIImage 和 CGImage”到底是什么意思?
-
使尺寸相同。我想获取缩放图像的数据并传输它们,所以我不想传输更大的图像。我怎样才能得到以字节为单位的缩放图像。
-
这意味着您为图像设置了一定的大小限制,如果图像大于此限制,您希望将图像缩小到其限制大小然后传输。对吗?
-
是的,我想缩放图像并传输缩放图像。
-
我已经决定这个任务来调整 CGImage 的大小,但是对于这个小任务来说,我认为它非常大
标签: ios ios5 uiimage scale cgimage