拍摄快照并保存到相机胶卷时的 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 图像大小的主要内容,如果未能解决你的问题,请参考以下文章