Κινούμενο PNG (.apng)

W3C Τυπικό

Το Animated Portable Network Graphics (APNG) επεκτείνει το τυπικό PNG για να υποστηρίξει κινούμενες εικόνες (animations) πολλών καρέ με πλήρες Truecolor 24-bit και διαφάνεια άλφα 8-bit, με πλήρη συμβατότητα προς τα πίσω με τους τυπικούς αποκωδικοποιητές PNG.

Μετατροπή APNG σε GIF

Δωρεάν μετατροπέας από APNG σε GIF εντός του προγράμματος περιήγησης. Μετατρέψτε αρχεία άμεσα στη συσκευή σας.

Επιθεώρηση & Μεταδεδομένα

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία APNG ελέγχοντας την αρχική δυαδική ακολουθία byte:

Επιλέξτε ή αποθέστε αρχεία εδώ

100% ιδιωτική μετατροπή εντός προγράμματος περιήγησης - τα αρχεία δεν φεύγουν ποτέ από τη συσκευή σας

ή επικόλληση Ctrl+V
Εγγύηση Απορρήτου Μηδενικής Μετάδοσης Δικτύου: 0 byte μεταφορτώθηκαν σε εξωτερικούς διακομιστές. Όλη η επεξεργασία πραγματοποιήθηκε τοπικά στο sandbox του προγράμματος περιήγησής σας.

Υπογραφή κεφαλίδας σε επίπεδο byte (Magic Bytes)

Τα λειτουργικά συστήματα και τα εργαλεία ανάλυσης αρχείων αναγνωρίζουν τα αρχεία APNG ελέγχοντας την αρχική δυαδική ακολουθία byte:

ΔΕΚΑΕΞΑΔΙΚΗ ΥΠΟΓΡΑΦΗ (OFFSET 0):

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

ΑΝΑΠΑΡΑΣΤΑΣΗ ASCII: ‰PNG....

Τυποποίηση: W3C Community Group Report (2021) / Mozilla Extension

Τεχνικές Προδιαγραφές

Αρχιτεκτονική ΠεριέκτηPNG chunk stream with acTL (animation control), fcTL (frame control), and fdAT (frame data) chunks
ΣυμπίεσηDeflate (zlib) sliding-window LZ77 with 2D adaptive filtering applied per-frame
Endianness ByteBig-Endian (network byte order)
Χρωματικοί ΧώροιsRGB, Display P3, Embedded ICC Profile (iCCP)
Κανάλια & ΔομήRGBA (8-bit or 16-bit per channel Truecolor + 8-bit alpha)
Μέγιστες Διαστάσεις2,147,483,647 x 2,147,483,647 pixels (PNG 31-bit limit)
ΔιαφάνειαFull 8-bit alpha channel transparency (256 levels of smooth translucency)
Streaming & Προοδευτική ΦόρτωσηProgressive chunk streaming; renders first frame immediately on legacy non-animated PNG parsers

Τεχνικός Πίνακας Σύγκρισης: APNG έναντι Ανταγωνιστών

Τεχνικό χαρακτηριστικόAPNG (Τρέχον)GIFWEBPAVIF
Βάθος ΧρώματοςRGB 24-bit (16.7M χρώματα)Με ευρετήριο 8-bit (256 χρώματα)RGB 24-bit (16.7M χρώματα)HDR 10-bit / 12-bit
Διαφάνεια ΆλφαΟμαλό άλφα 8-bit (256 επίπεδα)Δυαδική μάσκα ενεργού/ανενεργού 1-bitΟμαλό άλφα 8-bitΟμαλό άλφα 8-bit / 10-bit
Συμβατότητα προς τα ΠίσωΕμφανίζεται ως στατικό PNG σε παλαιότερα προγράμματα προβολήςΚαθολικό παλαιό GIFΚανένα σε παλαιότερα προγράμματα προβολήςΚανένα σε παλαιότερα προγράμματα προβολής
Αποτελεσματικότητα ΣυμπίεσηςDeflate (μέτρια)LZW (κακή)Καρέ κλειδιά/διαφοράς VP8 (υψηλή)Μεταξύ καρέ AV1 (εξαιρετικά υψηλή)

Συνηθισμένοι Τρόποι Διαφθοράς & Οδηγός Ανάκτησης Hex

Το animation αναπαράγει μόνο το πρώτο καρέ και ποτέ δεν κάνει επανάληψη (loop) ή δεν προχωράει.

Βασική Αιτία: Λείπει ή είναι κατεστραμμένο το τμήμα (chunk) 'acTL' (Animation Control) που βρίσκεται πριν από το πρώτο τμήμα IDAT.

Ανάκτηση: Επανασύνδεση (re-mux) των καρέ χρησιμοποιώντας το apngasm ή το File2File Animation Converter για την αναδόμηση έγκυρων τμημάτων ελέγχου κινουμένων σχεδίων.

Ανάλυση Ασφάλειας & Διανύσματα Επίθεσης Parser

Οι αναλυτές (parsers) APNG επεξεργάζονται επαναλαμβανόμενα τμήματα ελέγχου καρέ όπου οι κακοσχηματισμένες διαστάσεις μπορούν να προκαλέσουν υπερχείληση ακεραίων (integer overflow) ή εξάντληση μνήμης σωρού (heap exhaustion).

Γνωστά διανύσματα επίθεσης

  • Υπερχείληση ακεραίων στον υπολογισμό μετατόπισης καρέ (x_offset / y_offset) που οδηγεί σε σύνθεση καρέ εκτός ορίων.
  • Ασύμφωνο πλάτος/ύψος καρέ που οδηγεί σε υπέρβαση ανάγνωσης μνήμης (buffer over-read) κατά την ανάμιξη καρέ.
  • Άπειροι βρόχοι αποσυμπίεσης animation που εξαντλούν την CPU σε υπηρεσίες δημιουργίας μικρογραφιών backend.

Βέλτιστες αμυντικές πρακτικές:

Ιστορική Αναδρομή & Ορόσημα

2021Το W3C καταχωρεί επίσημα την προδιαγραφή APNG ως αναγνωρισμένο πρότυπο κοινότητας.
2017Το Google Chrome (v59) προσθέτει εγγενή υποστήριξη APNG, ολοκληρώνοντας την καθολική υιοθέτηση σε προγράμματα περιήγησης επιτραπέζιων υπολογιστών και κινητών.
2008Η Apple υιοθετεί το APNG για κινούμενα αυτοκόλλητα iOS και γραφικά του προγράμματος περιήγησης Safari.
2004Οι Stuart Parmenter και Vladimir Vukicevic καθορίζουν το APNG για τις κινούμενες εικόνες κατάστασης δικτύου του Mozilla Firefox.

Κύρια Πλεονεκτήματα

  • Πλήρες χρώμα RGB 24-bit συν διαφάνεια άλφα 8-bit, εξαλείφοντας εντελώς τα τεχνουργήματα με οδοντωτές ακμές της διαφάνειας GIF 1-bit.
  • 100% συμβατότητα προς τα πίσω με παλαιότερους αποκωδικοποιητές PNG (οι οποίοι εμφανίζουν απρόσκοπτα το κύριο καρέ εναλλακτικής λύσης).
  • Καθολική εγγενής αναπαραγωγή με επιτάχυνση υλικού σε όλα τα σύγχρονα προγράμματα περιήγησης επιτραπέζιων υπολογιστών, iOS και Android.

Τεχνικοί Περιορισμοί & Μειονεκτήματα

  • Μεγαλύτερα μεγέθη αρχείων από τα σύγχρονα μορφότυπα κινουμένων σχεδίων που βασίζονται σε βίντεο, όπως το WebM ή το MP4.
  • Υψηλότερη πολυπλοκότητα κωδικοποίησης και χρήση CPU κατά τη δημιουργία σε σύγκριση με το παλαιότερο GIF.
  • Έλλειψη πρόβλεψης διανυσμάτων κίνησης μεταξύ των καρέ που βρίσκεται σε εξειδικευμένους κωδικοποιητές βίντεο.

Ενδιαφέροντα Τεχνικά Στοιχεία

  • Η επίσημη Ομάδα Ανάπτυξης PNG απέρριψε το APNG το 2007, προτιμώντας το ξεχωριστό μορφότυπο MNG το οποίο τελικά απέτυχε να κερδίσει την αποδοχή.
  • Η Apple χρησιμοποίησε το APNG για κινούμενα αυτοκόλλητα στο iOS 10 Messages App Store, οδηγώντας σε μαζική υιοθέτηση από κινητά.
  • Εάν ανοίξετε ένα αρχείο APNG σε ένα αρχαίο πρόγραμμα προβολής εικόνων από τη δεκαετία του 1990, απλώς εμφανίζει το πρώτο καρέ χωρίς να παρουσιάσει σφάλμα.

Συχνές Τεχνικές Ερωτήσεις

Γιατί το APNG είναι καλύτερο από το GIF;

Το APNG υποστηρίζει 16,7 εκατομμύρια χρώματα και 256 επίπεδα ομαλής διαφάνειας alpha, ενώ το GIF περιορίζεται σε 256 χρώματα και σκληρή διαφάνεια 1-bit.

Υποστηρίζει κάθε πρόγραμμα περιήγησης το APNG;

Ναι. Κάθε σύγχρονος browser (Chrome, Safari, Firefox, Edge) υποστηρίζει εγγενώς το APNG από το 2017.

Μπορώ να μετατρέψω ένα APNG σε τυπικό GIF ή MP4;

Ναι. Το File2File.app μπορεί να μετατρέψει κινούμενα σχέδια APNG σε ελαφrά αρχεία GIF, MP4 ή WebM απευθείας στο web browser σας.