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

Posted

技术标签:

【中文标题】拍摄快照并保存到相机胶卷时的 iOS 图像大小【英文标题】:iOS image size when taking snapshot and save into camera roll 【发布时间】:2013-01-20 02:01:23 【问题描述】:

我截取了一张图片并将图像保存到相机胶卷中,然后将此图像设置为锁定屏幕。 但是 iPhone 4 中的图像尺寸是 640*940。我怎样才能使它 640*960 没有任何失真?我猜状态栏有一些高度。

CGSize size = self.view.bounds.size;

[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

UIImageWriteToSavedPhotosAlbum(image, self, @selector(image:didFinishSavingWithError:contextInfo:), nil);

【问题讨论】:

【参考方案1】:

设置图像大小的两种方法...

您可以为屏幕截图设置自己的框架:

CGRect rect = CGRectMake(0, 0, 640, 960);
UIView *view = [[UIView alloc]initWithFrame:rect];
    UIGraphicsBeginImageContext(view.frame.size);

这将采用您想要的大小。请记住,如果您的屏幕尺寸为 320 x 480,您将获得 640 x 960 的返回图像,但将是实际屏幕截图范围之外的空白区域。

另一种方法是从对象(例如图像视图)中找到您想要的区域:

UIImageView *imageview;
UIGraphicsBeginImageContext(imageview.frame.size);

这将再次返回您想要的内容,但实际屏幕尺寸之外的任何内容都将被空白填充。

【讨论】:

以上是关于拍摄快照并保存到相机胶卷时的 iOS 图像大小的主要内容,如果未能解决你的问题,请参考以下文章

从相机胶卷和共享打开图像时,文件大小报告不同

保存用相机拍摄或从相机胶卷中选择的图像时出现长时间延迟 - iPhone

将图像保存在相机胶卷中并获取资产 url

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

如何从使用 pdfkit 相机拍摄的图像创建 pdf

在ios5的自定义相册中保存多个图像但不在相机胶卷中?