Animált PNG (.apng)
W3C SzabványAz APNG többképkockás animációval és statikus képpel bővíti a PNG-t; az APNG-t nem támogató megjelenítők csak az állóképet mutathatják.
APNG konvertálása erre: GIF
Ingyenes, böngészőben használható APNG-konverter GIF formátumba. A fájlokat azonnal konvertálhatja az eszközén.
Vizsgálat és metaadatok
Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) APNG fájlokat:
Bájtszintű fejlécaláírás (fájlazonosító bájtok)
Az operációs rendszerek és a fájlelemzők a kezdő bináris bájtsorozat vizsgálatával azonosítják a(z) APNG fájlokat:
HEX ALÁÍRÁS (ELTOLÁS 0):
89 50 4E 47 0D 0A 1A 0AASCII ÁBRÁZOLÁS: ‰PNG....
Szabványosítás: W3C Community Group Report (2021) / Mozilla Extension
Műszaki specifikációk
| Konténer architektúra | PNG-adatfolyam acTL (animációvezérlő), fcTL (képkocka-vezérlő) és fdAT (képkockaadat) blokkokkal |
| Tömörítés | Deflate (zlib) csúszóablakos LZ77 tömörítés, képkockánként alkalmazott kétdimenziós adaptív szűréssel |
| Bájtsorrend | nagy bájtsorrend (hálózati bájtsorrend) |
| Színterek | sRGB, Display P3, Beágyazott ICC-profil (iCCP) |
| Csatornák és struktúra | RGBA (csatornánként 8 vagy 16 bit: 24 bites Truecolor és 8 bites alfacsatorna) |
| Max. méretek | 2,147,483,647 x 2,147,483,647 képpont (a PNG 31 bites korlátja) |
| Átlátszóság | Teljes, 8 bites alfacsatornás átlátszóság (256 fokozatú, finom áttetszőség) |
| Streaming és progresszív | Az APNG-fájlok statikus képet is tartalmaznak; az animációs blokkokat figyelmen kívül hagyó dekóderek állóképként jeleníthetik meg. |
Műszaki összehasonlító mátrix: APNG vs. versenytársak
| Technikai attribútum | APNG (Jelenlegi) | GIF | WEBP | AVIF |
|---|---|---|---|---|
| Színmélység | 24 bites RGB (16,7 millió szín) | 8 bites indexelt színű (256 szín) | 24 bites RGB (16,7 millió szín) | 10 bites / 12 bites HDR |
| Alfa-átlátszóság | 8 bites, fokozatos alfa-átlátszóság (256 szint) | 1 bites be/ki bináris maszk | 8 bites sima alfa | 8 bites / 10 bites fokozatos alfa-átlátszóság |
| Visszafelé kompatibilitás | Egyes PNG-megjelenítők meg tudják jeleníteni a statikus képet; az animációhoz APNG-támogatás kell. | A támogatás böngészőnként eltér. | Nincs a régebbi nézegetőkben | Nincs a régebbi nézegetőkben |
| Tömörítési hatékonyság | Deflate (mérsékelt) | LZW (gyenge) | VP8 kulcs-/különbségkockák (magas) | AV1 képkockák közötti tömörítés (rendkívül hatékony) |
Gyakori sérülési módok és hexadecimális helyreállítási útmutató
Az animáció csak az első képkockát játssza le, és soha nem ismétlődik (loop) vagy lép tovább.
Kiváltó ok: Hiányzó vagy sérült 'acTL' (Animation Control) adatblokk az első IDAT blokk előtt.
Helyreállítás: Fűzze újra a képkockákat az apngasm vagy a File2File.app Animation Converter segítségével az érvényes animációvezérlő blokkok újjáépítéséhez.
Biztonsági elemzés és elemző (parser) támadási vektorok
Az APNG-feldolgozók ismétlődő képkocka-vezérlő blokkokat dolgoznak fel, ahol a rosszul formázott méretek egész túlcsordulást vagy halom (heap) kimerülést okozhatnak.
Ismert támadási vektorok
- Egész túlcsordulás a képkocka eltolás (x_offset / y_offset) számításakor, ami képkockák határain túlnyúló összeállításhoz vezet.
- Nem megfelelő keretszélesség/magasság, ami a puffer határain túli olvasást eredményez a keretek keverése során.
- Végtelen animációs dekompressziós ciklusok, amelyek kimerítik a CPU-t a háttérben futó bélyegkép-generálási szolgáltatásokban.
Ajánlott védekezési módszerek: Érvényesítse a teljes animált vászon határait, és a raszterezés előtt korlátozza a maximálisan megengedett képkockaszámot.
Történeti háttér és mérföldkövek
Főbb előnyök
- Teljes 24 bites RGB szín plusz 8 bites alfa-átlátszóság, ami teljesen megszünteti az 1 bites GIF-átlátszóság cakkos szélű képhibáit.
- Az APNG-fájlok statikus képet is tartalmaznak; az animációs blokkokat figyelmen kívül hagyó dekóderek állóképként jeleníthetik meg.
- Sok jelenlegi böngésző támogatja az APNG-lejátszást; az elérhetőség a böngészőtől és verziójától függ.
Technikai korlátok és hátrányok
- Nagyobb fájlméretek a modern videóalapú animációs formátumokhoz, például a WebM-hez vagy az MP4-hez képest.
- Bonyolultabb kódolás és CPU-használat a generálás során a hagyományos GIF-hez képest.
- A speciális videokodekekben megtalálható képkockák közötti mozgásvektor-előrejelzés hiánya.
Érdekes technikai tudnivalók
- A hivatalos PNG Fejlesztői Csoport 2007-ben elutasította az APNG-t, a különálló MNG formátumot részesítve előnyben, amely végül nem tudott elterjedni.
- Az Apple az APNG-t használta az iOS 10 Üzenetek alkalmazásboltja animált matricáihoz, ami hatalmas mobilos elterjedést eredményezett.
- Ha megnyit egy APNG-fájlt az 1990-es évek egy ősi képnézegetőjében, az egyszerűen megjeleníti az első képkockát anélkül, hogy összeomlana.
Gyakran Ismételt Műszaki Kérdések
Miért jobb az APNG, mint a GIF?
Az APNG 16,7 millió színt és az alfa-átlátszóság 256 fokozatát támogatja, míg a GIF 256 színre és a durva 1 bites átlátszóságra korlátozódik.
Támogatják jelenleg a böngészők az APNG-t?
Sok jelenlegi böngésző támogatja az APNG-lejátszást; az elérhetőség a böngészőtől és verziójától függ.
Átalakíthatok egy APNG-t szabványos GIF-fé vagy MP4-formátummá?
Igen. A File2File.app képes az APNG animációkat kis méretű GIF, MP4 vagy WebM fájlokká átalakítani közvetlenül a webböngészőjében.
Kapcsolódó APNG konverziós párok
Az APNG GIF-be alakítása akkor segíthet, ha az alkalmazás támogatja a GIF-et, az APNG-t viszont nem. A GIF képkockánként 256 színre korlátozódik, a lejátszás pedig az alkalmazástól függ.
Az animált GIF fájlok APNG formátumra való átalakításával a régi, 256 színű raszteres animáció modern, teljes színmélységű, sima átlátszóságú sorozattá alakítható.
Helyezze el egy APNG kezdő képkockáját egy PDF-oldalon a specifikációs laphoz. A PDF statikus; a későbbi képkockák és a lejátszási időzítés kimaradnak.