这是我使用的代码:
NSImage *image = [[NSBundle bundleForClass:[self class]] imageForResource:@"test.jpg"];
NSData *originalData = [image TIFFRepresentationUsingCompression:NSTIFFCompressionJPEG factor:1.];
originalData.length
给了我1802224字节(1.7MB)。而磁盘上的图像大小为457KB。为什么TIFFRepresentation
会变大,我应该使用哪种表示来获取原始图像(我想通过网络传输图像)?
答案 0 :(得分:3)
TIFF远大于JPEG。这并不奇怪。
但是,您实际问题的答案是:不要使用任何“表示”。你拥有数据(即文件本身);发送!不要将图像文件转换为NSImage;抓住它作为NSData。