Animoitu PNG (.apng)

W3C Standardi

Animated Portable Network Graphics (APNG) laajentaa perinteistä PNG-muotoa tukemaan moniruutuisia animaatioita täydellä 24-bittisellä Truecolor-värityksellä ja 8-bittisellä alfaprosenttiläpinäkyvyydellä, säilyttäen taaksepäin yhteensopivuuden tavallisten PNG-dekooderien kanssa.

Muunna tiedostot muodosta APNG muotoon GIF

Ilmainen selaimen sisäinen APNG - GIF-muunnin. Muunna tiedostoja välittömästi laitteellasi.

Tarkastele ja metatiedot

Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat APNG-tiedostot tarkistamalla tiedoston alun binäärisarjan:

Valitse tai pudota tiedostot tähän

100 % yksityinen selaimen sisäinen muunnos - tiedostot eivät poistu laitteeltasi

tai liitä Ctrl+V
Tietosuojatakuu: 0 % verkkosiirtoa 0 tavua ladattu ulkoisille palvelimille. Kaikki käsittely tapahtui paikallisesti selaimen hiekkalaatikossa.

Tavutason otsikon allekirjoitus (Magic Bytes)

Käyttöjärjestelmät ja tiedostoanalyysaattorit tunnistavat APNG-tiedostot tarkistamalla tiedoston alun binäärisarjan:

HEX-ALLEKIRJOITUS (OFFSET 0):

89 50 4E 47 0D 0A 1A 0A

ASCII-ESITYSTAPA: ‰PNG....

Standardointi: W3C Community Group Report (2021) / Mozilla Extension

Tekniset tiedot

SäiliöarkkitehtuuriPNG chunk stream with acTL (animation control), fcTL (frame control), and fdAT (frame data) chunks
PakkausDeflate (zlib) sliding-window LZ77 with 2D adaptive filtering applied per-frame
Tavujärjestys (Endianness)Big-Endian (network byte order)
VäriavaruudetsRGB, Display P3, Embedded ICC Profile (iCCP)
Kanavat ja rakenneRGBA (8-bit or 16-bit per channel Truecolor + 8-bit alpha)
Suurimmat mitat2,147,483,647 x 2,147,483,647 pixels (PNG 31-bit limit)
LäpinäkyvyysFull 8-bit alpha channel transparency (256 levels of smooth translucency)
Suoratoisto ja progressiivinen latausProgressive chunk streaming; renders first frame immediately on legacy non-animated PNG parsers

Tekninen vertailumatriisi: APNG vs. kilpailijat

Tekninen attribuuttiAPNG (Nykyinen)GIFWEBPAVIF
Värisyvyys24-bittinen RGB (16,7 milj. väriä)8-bittinen indeksoitu (256 väriä)24-bittinen RGB (16,7 milj. väriä)10-bittinen / 12-bittinen HDR
Alfalevyinen läpinäkyvyys8-bittinen pehmeä alfa (256 tasoa)1-bittinen päälle/pois-binaarimaski8-bittinen pehmeä alfa8-bittinen / 10-bittinen pehmeä alfa
Taaksepäin yhteensopivuusNäkyy staattisena PNG:nä vanhoissa katseluohjelmissaYleinen vanha GIFEi lainkaan vanhoissa katseluohjelmissaEi lainkaan vanhoissa katseluohjelmissa
PakkaustehokkuusDeflate (kohtalainen)LZW (heikko)VP8 avain-/eroruudut (korkea)AV1 ruutujen välinen (erittäin korkea)

Yleiset korruptiotilat ja heksatietojehdotusopas

Animaatio toistaa vain ensimmäisen ruudun eikä koskaan toista tai etene.

Perussyy: Puuttuva tai vioittunut 'acTL' (Animation Control) -lohko, joka sijaitsee ennen ensimmäistä IDAT-lohkoa.

Korjaus: Yhdistä ruudut uudelleen apngasmilla tai File2File Animation Converterilla kelvollisten animaation ohjauslohkojen palauttamiseksi.

Turvallisuusanalyysi ja jäsenninhyökkäysvektorit

APNG-jäsennyslaitteet käsittelevät toistuvia ruudun ohjauslohkoja, joissa virheellisesti muotoillut mitat voivat aiheuttaa kokonaisluvun ylivuodon tai kekomuistin tyhjenemisen.

Tunnetut hyökkäysvektorit

  • Kokonaisluvun ylivuoto ruudun siirtymän (x_offset / y_offset) laskennassa, mikä johtaa taulukon ulkopuoliseen ruudun yhdistämiseen.
  • Yhteensopimattomat ruudun leveys/korkeus-arvot, jotka aiheuttavat puskurin yliluennan ruudun sekoituksen aikana.
  • Äärettömät animaation purkusilmukat, jotka kuormittavat suoritinta taustalla olevissa pienoiskuvan luontipalveluissa.

Parhaat puolustuskäytännöt:

Historia ja virstanpylväät

2021W3C rekisteröi virallisesti APNG-spesifikaation tunnustetuksi yhteisöstandardiksi.
2017Google Chrome (v59) lisää natiivin APNG-tuen, mikä viimeistelee yleisen työpöytä- ja mobiiliselaimien omaksumisen.
2008Apple ottaa APNG:n käyttöön animoiduissa iOS-tarraroissa ja Safari-selaimen grafiikoissa.
2004Stuart Parmenter ja Vladimir Vukicevic määrittävät APNG:n Mozilla Firefoxin verkkotilan animaatioita varten.

Tärkeimmät edut

  • Täysi 24-bittinen RGB-väri ja 8-bittinen alfaleveä läpinäkyvyys poistavat täysin 1-bittisen GIF-läpinäkyvyyden sahalaitaiset reuna-artefaktit.
  • 100-prosenttisesti taaksepäin yhteensopiva vanhojen PNG-dekooderien kanssa (jotka näyttävät saumattomasti ensisijaisen vararuudun).
  • Yleinen natiivi laitteistokiihdytetty toisto kaikissa moderneissa työpöytä-, iOS- ja Android-selaimissa.

Tekniset rajoitukset

  • Suuremmat tiedostokoot kuin nykyaikaisilla videopohjaisilla animaatiomuodoilla, kuten WebM tai MP4.
  • Korkeampi koodauskompleksisuus ja suorittimen käyttöaste luonnissa verrattuna perinteiseen GIF-muotoon.
  • Ruutujen välisten liikevektorien ennustuksen puuttuminen, jota käytetään erikoistuneissa videokoodekeissa.

Mielenkiintoisia teknisiä faktoja

  • Virallinen PNG Development Group hylkäsi APNG:n vuonna 2007 suosien erillistä MNG-muotoa, joka ei lopulta saavuttanut suosiota.
  • Apple käytti APNG:tä animoiduissa tarroissa iOS 10 Messages App Storessa, mikä vauhditti valtavaa mobiilikäyttöönottoa.
  • Jos avaat APNG-tiedoston 1990-luvun aikaisessa kuvankatseluohjelmassa, se näyttää yksinkertaisesti ensimmäisen ruudun kaatumatta.

Usein kysytyt tekniset kysymykset

Miksi APNG on parempi kuin GIF?

APNG tukee 16,7 miljoonaa väriä ja 256 tasaista alfaresoluution läpinäkyvyystasoa, kun taas GIF on rajattu 256 väriin ja karkeaan 1-bittiseen läpinäkyvyyteen.

Tukeeko jokainen selain APNG-muotoa?

Kyllä. Jokainen moderni selain (Chrome, Safari, Firefox, Edge) on tukenut APNG-muotoa natiivisti vuodesta 2017 lähtien.

Voinko muuntaa APNG-animaation tavalliseksi GIF- tai MP4-tiedostoksi?

Kyllä. File2File.app voi muuntaa APNG-animaatiot keveiksi GIF-, MP4- tai WebM-tiedostoiksi suoraan verkkoselaimessasi.