APNG внутри iOS-приложения
Я, наверное, буду за это пламенем.
Мне интересно, если кто-нибудь знает какой-либо способ загрузки APNG (анимированный PNG) в приложение для iPhone?
Я не говорю о нескольких PNG-изображениях, добавленных как NSArray
из UIImages
к UIImageView
, Я уже могу сделать этот метод, но это требует нескольких изображений PNG.
Я говорю о специальном формате PNG под названием APNG ( http://en.wikipedia.org/wiki/APNG), который содержит только 1 файл PNG, но содержит метаданные анимации.
Я нашел эту библиотеку под названием AVAnimator: http://www.modejong.com/AVAnimator/index.html которая предположительно может загружать формат APNG, но лицензия стоит 475 долларов США, и библиотека, кажется, создана несколько лет назад (iOS 4).
Я также читал, что в Apple iOS 8 Safari и Yosemite Safari встроена поддержка APNG.
Я действительно не хочу прибегать к использованию UIWebView только для отображения файла APNG. Это работает, я проверял это, но я не думаю, что это идеально.
Я надеялся, что есть какой-то новый iOS SDK, который позволит нам загружать APNG в приложение, о котором я не знаю, и, возможно, вы, ребята, знаете.
Как приложение Line ( http://line.me/en/) делает это? Кажется, у них есть анимированные PNG для их "наклеек".
3 ответа
Я только что выпустил фреймворк для загрузки и отображения файлов APNG для iOS.
Вы можете просто загрузить изображение APNG с тем же шаблоном UIImage
а также UIImageView
вот так, используя его:
let image = APNGImage(name: "your_apng_image")
let imageView = APNGImageView(image: image)
imageView.startAnimating()
view.addSubview(imageView)
Для получения дополнительной информации вы можете найти ее здесь: https://github.com/onevcat/APNGKit
Это действительно недокументировано, но это где-то в рамках ImageIO.
Я вижу некоторые строки APNG в CGImageProperties.h
Я нашел этот код,
https://github.com/radif/MSSticker-Images/
Вы можете создать APNG MSSticker с умножением PNG. Может быть, вы можете извлечь часть этого.