Nel canale di sviluppo di Chromium, il browser open source che è alla base di Google Chrome, è arrivato un nuovo commit che introduce il supporto sperimentale ad una tecnologia Web molto attesa da sviluppatori e Web designer, l'APNG. L'Animated Portable Network Graphics è, come facilmente intuibile dal nome, un'estensione del più noto formato PNG.
Tale formato permette ai file PNG di presentare sequenze animate in modo simile a quanto avviene con le immagini GIF, attualmente lo standard più utilizzato per questa particolare tipologia di media.
L'APNG supporta, al contrario delle GIF, le immagini a 24-bit e la trasparenza a 8-bit, dunque rappresenta una notevole evoluzione rispetto ai più comuni formati di immagini animate presenti ormai da anni in rete. L'APNG divide il decoding delle immagini PNG in due step: il parsing e il decoding.
Durante il parsing, le porzioni di un file APNG vengono gestiti in una delle tre modalità seguenti:
- acTL e fcTL con specifiche proprietà APNG vengono letti e immagazzinati. Se in questi file vengono rilevati errori il browser li tratterà come delle immagini statiche, vengono inoltre effettuati due controlli dei file sia prima che dopo la creazione dell'IDAT, ovvero il contenitore dei dati dell'immagine;
- fdAT e IDAT vengono immagazzinati per una futura decodifica;
- le porzioni del file vengono processati da libpng prima dell'arrivo dell'IDAT.
Indipendentemente dalla modalità utilizzata, dopo questi controlli i file vengono finalmente decodificati e trasformati in un'immagine animata.
Nell'annuncio del commit gli sviluppatori di Chromium hanno inserito anche una dettagliata descrizione del processo di decoding in modo da spiegare ad utenti e sviluppatori come eseguire dei test per capire se il file animato è stato correttamente creato e caricato da Chromium.
L'autore del commit specifica che per ora si tratta soltanto di un supporto in fase embrionale, infatti sono già stati segnalati alcuni bug che verranno risolti con le prossime patch.
Via Google Git