PNG animat (.apng)

W3C Standard

APNG extinde PNG cu animație cu mai multe cadre și o imagine statică; programele fără suport APNG pot afișa doar imaginea statică.

Convertește din APNG în GIF

Convertor gratuit din APNG în GIF direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.

Inspectare și metadate

Sistemele de operare și analizatoarele de fișiere identifică fișierele APNG prin inspectarea secvenței binare inițiale:

Selectează sau plasează fișierele aici

Privat - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate: nicio transmisie prin rețea: 0 octeți încărcați pe servere externe. Toată procesarea a avut loc local în sandbox-ul browserului tău.

Semnătura antetului la nivel de octet (octeți magici)

Sistemele de operare și analizatoarele de fișiere identifică fișierele APNG prin inspectarea secvenței binare inițiale:

SEMNĂTURĂ HEXAZECIMALĂ (DECALAJ 0):

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

REPREZENTARE ASCII: ‰PNG....

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

Specificații tehnice

Arhitectură containerFlux de fragmente PNG cu fragmente acTL (controlul animației), fcTL (controlul cadrului) și fdAT (datele cadrului)
CompresieDeflate (zlib) cu fereastră glisantă LZ77 și filtrare adaptivă 2D aplicată fiecărui cadru
Ordinea octețilorBig-Endian (ordinea octeților de rețea)
Spații de culoaresRGB, Display P3, Profil ICC încorporat (iCCP)
Canale și structurăRGBA (Truecolor pe 8 sau 16 biți pe canal + alfa pe 8 biți)
Dimensiuni maxime2.147.483.647 x 2.147.483.647 de pixeli (limita PNG pe 31 de biți)
TransparențăCanal alfa complet pe 8 biți (256 de niveluri de transparență graduală)
Streaming și progresivFișierele APNG includ o imagine statică; decodoarele care ignoră blocurile de animație o pot afișa ca imagine statică.

Matrice de comparație tehnică: APNG vs. concurenți

Atribut tehnicAPNG (Curent)GIFWEBPAVIF
Adâncime de culoareRGB pe 24 de biți (16,7M culori)Indexat pe 8 biți (256 culori)RGB pe 24 de biți (16,7M culori)HDR pe 10 biți / 12 biți
Transparență alfaAlfa neted pe 8 biți (256 niveluri)Mască binară activ/inactiv pe 1 bitAlfa neted pe 8 bițiAlfa neted pe 8 biți / 10 biți
Compatibilitate retroactivăUnele vizualizatoare PNG pot afișa imaginea statică; animația necesită suport APNG.Compatibilitatea diferă în funcție de browser.Niciuna pe vizualizatoarele vechiNiciuna pe vizualizatoarele vechi
Eficiență de compresieDeflate (moderat)LZW (slab)Cadre cheie/diferență VP8 (ridicat)Inter-cadru AV1 (ultra-ridicat)

Moduri comune de corupție și ghid de recuperare hexazecimală

Animația redă doar primul cadru și nu se repetă și nici nu avansează vreodată.

Cauză principală: Lipsește sau este corupt fragmentul 'acTL' (Animation Control) situat înainte de primul fragment IDAT.

Recuperare: Remuxează cadrele cu apngasm sau File2File.app Animation Converter pentru a reconstrui fragmentele valide de control al animației.

Analiză de securitate și vectori de atac asupra parserului

Analizoarele APNG procesează fragmente repetate de control al cadrelor unde dimensiunile malformate pot provoca depășire de întreg (integer overflow) sau epuizarea memoriei heap.

Vectori de atac cunoscuți

  • Depășire de întreg în calculul decalajului cadrului (x_offset / y_offset) ducând la compunerea cadrelor în afara limitelor.
  • Lățimea sau înălțimea necorespunzătoare a cadrului poate duce la citirea excesivă din memoria tampon în timpul combinării cadrelor.
  • Bucle infinite de decompresie a animației care epuizează CPU-ul în serviciile backend de generare a miniaturilor.

Cele mai bune practici de securitate: Validează limitele totale ale pânzei animate și restricționează numărul maxim de cadre permise înainte de rasterizare.

Origini istorice și repere

2021W3C înregistrează oficial specificația APNG ca standard comunitar recunoscut.
2017Chrome 59 a adăugat suport nativ APNG; suportul diferă în funcție de browser și versiune.
2008Apple adoptă APNG pentru stickere animate în iOS și grafica browserului Safari.
2004Stuart Parmenter și Vladimir Vukicevic specifică APNG pentru animațiile de stare a rețelei din Mozilla Firefox.

Avantaje cheie și beneficii

  • Culoare RGB completă pe 24 de biți plus transparență alfa pe 8 biți, eliminând complet artefactele de margini dințate ale transparenței GIF pe 1 bit.
  • Fișierele APNG includ o imagine statică; decodoarele care ignoră blocurile de animație o pot afișa ca imagine statică.
  • Multe browsere actuale acceptă redarea APNG; disponibilitatea depinde de browser și versiune.

Limitări tehnice și dezavantaje

  • Dimensiuni de fișier mai mari decât formatele moderne de animație bazate pe video, cum ar fi WebM sau MP4.
  • Complexitate de codificare și utilizare a CPU mai mari în timpul generării în comparație cu formatul GIF clasic.
  • Lipsa predicției vectoriale de mișcare inter-cadru care se găsește în codec-urile video specializate.

Curiozități tehnice interesante

  • Grupul oficial de dezvoltare PNG a respins APNG în 2007, preferând formatul separat MNG, care în cele din urmă nu a reușit să obțină adoptare.
  • Apple a folosit APNG pentru stickere animate în App Store din iOS 10 Messages, stimulând o adoptare masivă pe dispozitivele mobile.
  • Dacă deschizi un fișier APNG într-un vizualizator de imagini vechi din anii 1990, acesta afișează pur și simplu primul cadru fără să se blocheze.

Întrebări tehnice frecvente

De ce este APNG mai bun decât GIF?

APNG acceptă 16,7 milioane de culori și 256 de niveluri de transparență alfa netedă, în timp ce GIF este limitat la 256 de culori și o transparență binară (1-bit) rigidă.

Acceptă toate browserele formatul APNG?

Multe browsere actuale acceptă redarea APNG; disponibilitatea depinde de browser și versiune.

Pot converti un APNG într-un GIF standard sau MP4?

Da. File2File.app poate converti animațiile APNG în fișiere ușoare GIF, MP4 sau WebM direct în browserul web.