在iOS中处理大图片

前端之家收集整理的这篇文章主要介绍了在iOS中处理大图片前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想允许用户选择照片,而不限制大小,然后编辑它.

我的想法是创建与要编辑的屏幕大小相同的大照片的缩略图,然后,当编辑完成时,使用大照片进行与缩略图相同的编辑.

当我使用UIGraphicsBeginImageContext来创建一个缩略图时,会引起内存问题.

我知道由于硬件限制,很难直接编辑整个大图像,所以我想知道是否有一种方法可以将大图像缩小到2048 * 2048以下,而不是内存问题?

我发现有一个BitmapFactory类,它有一个inSampleSize选项,可以在Android平台中对照片进行缩减.在iOS上怎么做?

解决方法

您需要使用UIImage处理图像加载,而实际上并不会将图像加载到内存中,然后根据所需的图像大小创建位图上下文(因此这将是所使用的内存量).然后,您需要使用CGContextDrawImage,将CGImageCreateWithImageInRect转换到目标上下文中,从原始图像(这是图像数据的一部分加载到内存中)遍历多次绘制图块.

this sample code from Apple.

猜你在找的iOS相关文章