将PNG(或高质量JPG)图像保存到照片库

时间:2009-09-16 23:57:33

标签: iphone png uiimage jpeg

方案 将320x480视图保存为用户保存的相册中的图像。

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

使用普通的renderInContext / UIImageWriteToSavedPhotosAlbum方法将视图保存到库中。我已经尝试将UIImage转换为PNGRepresentation,然后使用该数据创建一个新的UIImage - 它仍然只是将JPG保存在库中。

我可以通过将我的视图升高到800px高,然后拍摄“截图”来解决这个问题 - 但这将是很多工作。

有没有人能够解决这个低质量的保存图像问题?我已经看到了关于它的线索,但总是在没有任何坚实想法的情况下死去。

谢谢, 伊恩

1 个答案:

答案 0 :(得分: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

感谢Ben Weiss。

相关问题