作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在使用 AVCaptureSession 从相机捕获图像:
- (void)captureOutput:(AVCaptureOutput *)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)sampleBuffer fromConnection:(AVCaptureConnection *)connection
图像被转换为 UIImage 并添加到 ImageView 中。正如预期的那样,图像以纵向显示。
我正在尝试在捕获 session 之间将图像保存到核心数据中。我的核心数据实体有一个二进制数据类型的图像属性。
coreDataEntity.image = UIImagePNGRepresentation(imageView.image);
一旦用户重新加载以前保存的 session , ImageView 将使用以下方法恢复其图像:
imageView.image = [UIImage imageWithData:coreDataEntity.image];
但是,恢复后的图像逆时针旋转了 90 度,顶部指向左侧。
图像在哪个点旋转?是在保存期间还是从核心数据加载期间?
我有一种将 UIImage 旋转 90 度的方法,但似乎在随后重新加载同一图像时,它会额外旋转 90 度。我怎么知道我已经旋转了一次 UIImage?
感谢您的帮助!
最佳答案
一年后你可能已经自己解决了这个问题,但我最近自己也遇到了这个问题,我想我会提出我的解决方案。
我将存储的图像格式更改为 JPEG。
改变
coreDataEntity.image = UIImagePNGRepresentation(imageView.image);
到
coreDataEntity.image = UIImageJPEGRepresentation(imageView.image,1.0f);
图像恢复如初
imageView.image = [UIImage imageWithData:coreDataEntity.image];
希望这对某人有帮助。
关于从核心数据加载的 iPhone UIImage 逆时针旋转 90 度。怎么修?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10245649/
我是一名优秀的程序员,十分优秀!