iOS 保存图片的大小问题


同一个图片的 URL,比如 http://example.com/xxx.jpg
1. 用电脑上的浏览器打开,保存图片到本地,查看图片大小。
2. 用iOS 的 Safari 打开,保存图片到本地相册,然后用上传到电脑上看大小。
3. 自己写的 iOS 应用,应用内保存图片到本地相册,图片请求的是同一个 URL,下载到本地后上传到电脑上看图片大小。

发现三个大小都不一样,两个浏览器打开的大小差别不会很大,几十k,第三个可能就差到几百 K 甚至更多了。

iOS 应用内保存图片用的是 UIImageWriteToSavedPhotosAlbum 图片请求用的是 AFNetworking


 [[[UIImageView alloc]init] setImageWithURLRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:imageurl]] placeholderImage:nil 
success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
    imageToBeDownload = image;
} failure:nil];

另外:手机传到电脑用的是 airdrop

ios开发 ios 图片存储 afnetworking2.0 iphone

纯洁D笑面 10 years, 2 months ago

UIImageWriteToSavedPhotosAlbum保存图片是会导致图片的质量有部分下降的, 特别是jpeg格式的, 它本身是个压缩格式, 下载下来放到UIImage里, 会有解压缩以及一些别的处理, 保存到本地的时候, 又会重新压缩, 大小有出入也是挺正常的。参见: UIImageWriteToSavedPhotosAlbum - Photo quality degraded

至于两个浏览器下载下来都不一样,就不清楚为啥了, 可能是ios上的safari也有什么特殊的处理吧!

Lambda answered 10 years, 2 months ago

Your Answer