方案 将320x480视图保存为用户保存的相册中的图像。
问题 始终保存800x ?,低质量的JPG。
使用普通的renderInContext / UIImageWriteToSavedPhotosAlbum方法将视图保存到库中。我已经尝试将UIImage转换为PNGRepresentation,然后使用该数据创建一个新的UIImage - 它仍然只是将JPG保存在库中。
我可以通过将我的视图升高到800px高,然后拍摄“截图”来解决这个问题 - 但这将是很多工作。
有没有人能够解决这个低质量的保存图像问题?我已经看到了关于它的线索,但总是在没有任何坚实想法的情况下死去。
谢谢, 伊恩
答案 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。