GitHub - swiftgif/SwiftGif: A small UIImage extension with gif support
source link: https://github.com/swiftgif/SwiftGif
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
SwiftGif
A small UIImage
extension with gif support.
Usage
// An animated UIImage let jeremyGif = UIImage.gif(name: "jeremy") // A UIImageView with async loading let imageView = UIImageView() imageView.loadGif(name: "jeremy") // A UIImageView with async loading from asset catalog(from iOS9) let imageView = UIImageView() imageView.loadGif(asset: "jeremy")
Installation
CocoaPods
Install CocoaPods with the following command:
gem install cocoapods
Integrate SwiftGif into your Xcode project by creating a Podfile
:
platform :ios, '9.0' use_frameworks! target '<Your Target Name>' do pod 'SwiftGifOrigin', '~> 1.6.1' end
Run pod install
to build your dependencies.
Carthage
Install Carthage with Homebrew using the following command:
brew update brew install carthage
Add the following line to your Cartfile
to add SwiftGif:
github "bahlo/SwiftGif" ~> 1.6.1
Run carthage update
to build the framework and drag the built
SwiftGif.framework
into your Xcode project.
How does it work?
Easy, it does the following:
- Find out the duration of every frame
- Find the greatest common divisor
- Add frames accordingly to the greatest common divisor to an array
- Create an animated UIImage with the frames
Testing
$ xcodebuild \
-project SwiftGif.xcodeproj \
-scheme SwiftGif \
-sdk iphonesimulator \
-destination "platform=iOS Simulator,name=iPhone 8" \
build test \
CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY=""
Inspiration
This project is heavily inspired by uiimage-from-animated-gif. Kudos to @mayoff. ?
License
This repository is licensed under the MIT license, more under LICENSE.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK