iOS 图片解压缩过程 - dongshuju/ImageCompressionStudy GitHub Wiki

iOS从磁盘加载一张图片,使用UIImageVIew显示在屏幕上,需要经过以下步骤:

  1. 从磁盘拷贝数据到内核缓冲区

  2. 从内核缓冲区复制数据到用户空间

  3. 生成UIImageView,把图像数据赋值给UIImageView

  4. 如果图像数据为未解码的PNG/JPG,解码为位图数据

  5. CATransaction捕获到UIImageView layer树的变化

  6. 主线程Runloop提交CATransaction,开始进行图像渲染

    6.1 如果数据没有字节对齐,Core Animation会再拷贝一份数据,进行字节对齐。

    6.2 GPU处理位图数据,进行渲染。

FastImageCache解析

谈谈 iOS 中图片的解压缩