A modern image loading framework in Swift (supports PNG, JPG, GIF, WEBP)
To integrate Elkon into your Xcode project using Carthage, specify it in your Cartfile:
github "zetasq/Elkon"
Run carthage update to build the framework. Elkon has SwiftCache and CWebP as dependencies. Drag the built Elkon.framework, SwiftCache.framework and CWebP.framework into your Xcode project.
Instead of using bare UIImageView, you create ElkonImageView (a light-weight subclass of UIImageView) to access the powerful Elkon APIs.
let iconView = ElkonImageView()
// load image by url (supports local file url)
iconView.elkon.loadImage(at: URL(string: "my-image-url"), placeholder: UIImage(named: "iconPlaceholder", animated: true)
// load UIImage directly
let image = UIImage(named: "icon-image")
iconView.elkon.load(uiImage: image, placeholder: nil, animated: true)
// Image resizing and cornerRadius support
let renderConfig = ImageRenderConfig(sizeInPoints: CGSize(width: 50, height: 50), cornerRadiusInPoints: 5, scaleMode: .fill)
iconView.elkon.loadImage(at: URL(string: "my-image-url"), renderConfig: renderConfig, placeholder: nil, animated: true)Elkon is released under the MIT license. See LICENSE for details.