如何将png图像保存到相机胶卷?

Posted

技术标签:

【中文标题】如何将png图像保存到相机胶卷?【英文标题】:How to save a png image to camera roll? 【发布时间】:2010-04-03 17:59:23 【问题描述】:

我想将游戏中的屏幕截图保存到相机胶卷。 现在我正在使用 UIImageWriteToSavedPhotosAlbum 以 jpg 格式保存图像,其中包含太多丑陋的 jpg 伪影。 有没有办法将 png 格式的 UIImage 保存到相机胶卷?

【问题讨论】:

【参考方案1】:

首先你必须添加 AssetsLibrary 框架,而不是像这样:

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];

UIImage *image = ... some image

[library writeImageDataToSavedPhotosAlbum: UIImagePNGRepresentation(image) metadata:nil completionBlock:nil];

【讨论】:

【参考方案2】:

此处指出的解决方案现已弃用 - 这篇文章:

UIImageWriteToSavedPhotosAlbum saves to wrong size and quality

展示了如何做到这一点:

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

【讨论】:

【参考方案3】:

Napolit “我想将游戏中的屏幕截图保存到相机胶卷中。现在我正在使用 UIImageWriteToSavedPhotosAlbum 将图像保存为 jpg 格式,但太多了......”

刚刚偶然发现您的问题,其中大部分我无法回答。但是,我确实有一个简单快捷的方法来抓取 iPad 屏幕。只需同时按下 SLEEP/WAKE 按钮和 HOME(屏幕底部的圆形按钮)按钮。

【讨论】:

【参考方案4】:

这告诉了如何将 UIImage 表示为 jpg 或 png:Save UIImage Object as PNG or JPEG File

【讨论】:

以上是关于如何将png图像保存到相机胶卷?的主要内容,如果未能解决你的问题,请参考以下文章

如何避免将从相机胶卷中挑选的图像保存到相机胶卷? [iOS]

将图像保存到特定相册,但限制保存到相机胶卷文件夹

将应用内视频保存到相机胶卷?

使用手势将图像从 UIWebView 保存到相机胶卷

拍摄快照并保存到相机胶卷时的 iOS 图像大小

将更改的图像保存到相机胶卷时因内存问题而终止