PNG animat (.apng)

W3C Standard

Animated Portable Network Graphics (APNG) extinde formatul PNG standard pentru a accepta animații cu mai multe cadre, cu Truecolor complet pe 24 de biți și transparență alfa pe 8 biți, fiind compatibil retroactiv cu decodoarele PNG standard.

Convertește din APNG în GIF

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

Inspectează ș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

Conversie 100% privată în browser - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate cu zero transmisie în 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 (Magic Bytes)

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

SEMNĂTURĂ HEX (OFFSET 0):

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

REPREZENTARE ASCII: ‰PNG....

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

Specificații tehnice

Arhitectură containerPNG chunk stream with acTL (animation control), fcTL (frame control), and fdAT (frame data) chunks
CompresieDeflate (zlib) sliding-window LZ77 with 2D adaptive filtering applied per-frame
Endianitatea octețilorBig-Endian (network byte order)
Spații de culoaresRGB, Display P3, Embedded ICC Profile (iCCP)
Canale și structurăRGBA (8-bit or 16-bit per channel Truecolor + 8-bit alpha)
Dimensiuni maxime2,147,483,647 x 2,147,483,647 pixels (PNG 31-bit limit)
TransparențăFull 8-bit alpha channel transparency (256 levels of smooth translucency)
Streaming și progresivProgressive chunk streaming; renders first frame immediately on legacy non-animated PNG parsers

Matrice de comparație tehnică: APNG vs Competitori

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)Cască binară on/off pe 1 bitAlfa neted pe 8 bițiAlfa neted pe 8 biți / 10 biți
Compatibilitate retroactivăSe afișează ca PNG static pe vizualizatoarele vechiGIF clasic universalNiciuna 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: Re-muxați cadrele utilizând apngasm sau File2File 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ățime/înălțime necorespunzătoare a cadrului rezultând în citirea excesivă a memoriei tampon în timpul amestecă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:

Origini istorice și repere

2021W3C înregistrează oficial specificația APNG ca standard comunitar recunoscut.
2017Google Chrome (v59) adaugă suport nativ pentru APNG, completând adoptarea universală pe browserele desktop și mobile.
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.
  • Compatibilitate 100% retroactivă cu decodoarele PNG vechi (care afișează fără probleme cadrul principal de rezervă).
  • Redare universală nativă accelerată hardware pe toate browserele moderne de desktop, iOS și Android.

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ă deschideți un fișier APNG într-un vizualizator de imagini vechi din anii 1990, acesta va afișa pur și simplu primul cadru fără a se bloca.

Î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?

Da. Fiecare browser modern (Chrome, Safari, Firefox, Edge) acceptă nativ APNG încă din 2017.

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.