2009-09-16 133 views
1

场景 将320x480视图保存为用户保存的照片相册中的图像。将PNG(或高质量JPG)图像保存到照片库

问题 始终保存800x?,低质量的JPG。

使用正常renderInContext/UIImageWriteToSavedPhotosAlbum方法保存的视图到库中。我试着转换的UIImage到PNGRepresentation然后使用这些数据作出新的UIImage - 它仍然只是保存在库中的JPG。

我可能会因升迁我以800像素高大然后将“截屏”解决了这个问题 - 但是这将是一个大量的工作。

有没有人能解决这个低质量保存的图像问题?我见过线程遍这件事,但是没有任何坚实的思想始终都死光了。

谢谢, 伊恩

回答

4

这个问题的最佳答案可以发现here。我会粘贴它,以防万一发生在未来的事情,这将使链接无效:

UIImage* im = [UIImage imageWithCGImage:myCGRef]; // make image from CGRef 
NSData* imdata = UIImagePNGRepresentation (im); // get PNG representation 
UIImage* im2 = [UIImage imageWithData:imdata]; // wrap UIImage around PNG representation 
UIImageWriteToSavedPhotosAlbum(im2, nil, nil, nil); // save to photo album 

感谢本Weiss为此。