这是一个在 iOS 和 OS X 上轻松下载和解码渐进式 JPEG 的框架。它使用 libjpeg-turbo 作为底层 JPEG 实现。为了方便,我们从 libjpeg-turbo 的 官方版本 提供了静态库的版本 1.4.0。
简单地通过 CocoaPods 安装
pod 'Concorde'
然后使用 CCBufferedImageView
,它将逐步下载并显示图片
let imageView = CCBufferedImageView(frame: ...)
if let url = NSURL(string: "http://example.com/yolo.jpg") {
imageView.load(url)
}
如果你使用 Contentful,安装 subspec
pod 'Concorde/Contentful'
并将你的 UIImageView
使用替换为 CCBufferedImageView
以自动使用渐进式 JPEG,如果你之前一直在使用 UIImageView
分类。由于交付 API 中的图像转换功能,这将不受文件原始格式的影响。
你还可以将 Concorde 作为子项目集成或从发行版部分下载二进制构建。请注意,这目前仅适用于 iOS。
版权所有 (c) 2015 Contentful GmbH。有关更多详细信息,请参阅 LICENSE。
CCBufferedImageDecoder
是从 WebKit 衍生而来,请参阅其文件的注释以获取更多版权信息。
示例使用 http://pooyak.com/p/progjpeg/,该示例将连接速度人为降低到 0.5 千字节/秒以演示常规和渐进式 JPEG 之间的区别。