APNG - APNG
Přípona názvu souboru |
.png .apng
|
---|---|
Typ internetového média | obrázek/vnd.mozilla.apng, obrázek/apng |
První vydání | 4. srpna 2008 |
Typ formátu | formát animovaného rastrového obrázku |
Rozšířeno z | PNG |
Otevřený formát ? | Ano |
Animated Portable Network Graphics ( APNG ) je formát souboru, který rozšiřuje specifikaci Portable Network Graphics (PNG) tak, aby umožňoval animované obrázky, které fungují podobně jako animované soubory GIF , přičemž podporuje 24bitové obrázky a 8bitovou průhlednost , které pro GIF nejsou k dispozici. Zachovává si také zpětnou kompatibilitu s neanimovanými soubory PNG.
První snímek souboru APNG je uložen jako normální proud PNG, takže většina standardních dekodérů PNG dokáže zobrazit první snímek souboru APNG. Data o rychlosti snímků a další animační rámce jsou uloženy v dalších blocích (jak stanoví původní specifikace PNG). APNG konkuruje síťové grafice s více obrázky (MNG), což je komplexní formát pro bitmapové animace vytvořené stejným týmem jako PNG. Výhodou APNG je menší velikost knihovny a kompatibilita se staršími implementacemi PNG.
Ve srovnání mezi GIF , APNG a WebP měl APNG nejnižší velikost souboru.
Dějiny
Specifikace APNG byla vytvořena v roce 2004 Stuartem Parmenterem a Vladimirem Vukićevićem z Mozilla Corporation, aby bylo možné ukládat animace potřebné pro rozhraní, jako jsou například pulzátory . V květnu 2003 zrušila Mozilla podporu pro animace MNG , která poskytuje nadmnožinu funkcí APNG, přičemž uvedla obavy z velké velikosti souboru vyžadované pro rozsáhlou knihovnu dekodérů MNG (300 KB); dekodér APNG, postavený na zadní straně dekodéru PNG, byl mnohem menší komponentou.
Mezi uživateli a správci formátů PNG a MNG měl APNG vlažný příjem. Zejména byl PNG koncipován jako formát jednoho obrázku. APNG skrývá následující rámce v pomocných blocích PNG takovým způsobem, že je aplikace, které neznají APNG, ignorují, ale jinak neexistují žádné změny formátu, které by softwaru umožňovaly rozlišovat mezi animovanými a neanimovanými obrázky. Některé z hlavních obav z toho vyplývajících byla neschopnost aplikací vyjednávat pro PNG a APNG nebo rozlišovat mezi PNG a APNG, jakmile byly přijaty, nebo kvůli starším softwarům dokonce informovat uživatele, že existují další rámce. Glenn Randers-Pehrson stál v čele snahy sladit pozici puristů PNG s pozicí zastánců APNG doporučením změn formátu APNG a návrhem použití jedinečného typu MIME (např. Video/png), ale zastánci APNG přidali pouze jiný MIME zadejte (image/apng) a trvejte na použití přípony .png namísto .apng , což vede k tomu, že formát nebude schválen vývojovou skupinou PNG.
Skupina PNG oficiálně odmítla APNG jako oficiální rozšíření 20. dubna 2007. Bylo předloženo několik následných návrhů na jednoduchý formát animované grafiky založený na PNG s využitím několika různých přístupů.
Mozilla Firefox přidal podporu pro APNG v kufru verze 3 23. března 2007. Protože je však libpng referenční implementací oficiální specifikace skupiny PNG , podporu APNG nelze nikdy podporovat v hlavní distribuci libpng, pokud zůstane neratifikovaná skupina. Iceweasel 3 podporuje APNG pomocí neoficiální varianty libpng od Mozilly.
V roce 2008 přijal WorldDMB APNG jako zpětně kompatibilní rozšíření umožňující animaci jako součást uživatelské aplikace MOT SlideShow pro digitální rádio. „Specifikace APNG 1.0 - animovaná přenosná síťová grafika“ je zahrnuta jako normativní příloha A ve standardu ETSI TS 101 499 V2.2.1. V roce 2010 začaly komerční rozhlasové stanice v Sydney zahrnovat animace APNG do digitálního rozhlasového vysílání DAB+. Tyto APNG animace jsou neseny aplikací „MOT slideshow“, která doprovází zvukové služby. Očekává se, že na začátku roku 2011 budou následovat další města v Austrálii.
Role Mozilly při rozšiřování formátu PNG na APN odráží mnohem dřívější roli Netscape při popularizaci animovaných GIF .
V roce 2016 společnost Apple přijala formát APNG jako preferovaný formát pro animované nálepky v aplikacích iOS 10 iMessage .
Dne 15. března 2017 podpora APNG byl přidán do prohlížeče Chromium .
Formát souboru
Specifikace APNG navazuje na formát souboru PNG a zavádí tři nové pomocné bloky:
- Blok ovládacího prvku animace (acTL) předchází IDATům výchozího obrázku a je jakousi „značkou“, že se jedná o animovaný soubor PNG. Obsahuje také počet snímků a počet opakování smyčky animace (0 znamená nekonečno).
- Blok ovládání rámce (fcTL) předchází každému snímku a obsahuje jeho metadata: Dimensions; pozice (vzhledem k výchozímu obrázku); doba trvání; pokud je jednou přeškrtnuto, je černé, nahrazeno předchozím rámečkem nebo přetaženo dalším rámečkem; a pokud platí jeho transparentnost.
- Blok dat rámce (fdAT) ukládající obsah rámce. Začíná pořadovým číslem, pak má stejnou strukturu jako bloky IDAT výchozího obrázku.
Pořadová čísla se vztahují jak na ovládací prvky rámců, tak na datové bloky snímků, které společně sledují společnou sekvenci, což umožňuje obnovení pořadí a načasování rámců v případě, že je editor PNG, který si neuvědomuje APNG, znovu uspořádá, jak to umožňují pravidla pro uspořádání bloků PNG.
Rámečky používají stejnou bitovou hloubku, barevný typ, kompresní metodu, filtrační metodu, prokládanou metodu a paletu (pokud existují) jako výchozí obrázek.
Specifikace PNG byla navržena s ohledem na budoucí rozšíření. Aplikace, která čte soubor PNG, by měla jednoduše ignorovat všechny bloky, kterým nerozumí. To je důvod, proč je APNG zpětně kompatibilní . Stávající aplikace pouze rozpoznají první snímek a ignorují další bloky animace.
Podpěra, podpora
Pole | Software | Podporuje? | Od té doby |
---|---|---|---|
Image zpracování |
APNG Assembler | Ano | v. 1 |
cphktool APNG Anime Maker | Ano | v. 1 (9. června 2009) | |
APNG Disassembler | Ano | v. 1 | |
APNG Optimizer | Ano | v. 1.0 (28. března 2011) | |
FFmpeg | Ano | v. 2.7 | |
FireAlpaca | Ano | v. 2.3.13 | |
Gamani GIF Movie Gear | Ano | v. 4.2 (březen 2008) | |
GIMP | Vyžaduje zásuvný modul | N/A | |
Obrázek J. | Ano | v. 1,41 g (3. července 2008) | |
ImageMagick | Ano | v. 7.0.10-31 (20. září 2020) | |
Představte si | Ano | v. 1.0.2 (4. května 2008) | |
IrfanView | Pouze ke čtení | v. 4.40 (31. července 2015) | |
Konvertor | Ano | v. 4.02 (květen 2010) | |
KSquirrel (později SAIL) | Pouze ke čtení | v. 0.7.2 (3. října 2007) | |
Paint.NET | Vyžaduje plugin | N/A | |
RealWorld Paint | Ano | v. 2011.1 (prosinec 2011) | |
VirtualDub | Vyžaduje plugin | N/A | |
XnView | Pouze ke čtení | v. 1.97.4 (30. dubna 2010) | |
Motory uživatelského rozhraní Sciter a HTMLayout | Pouze ke čtení | od roku 2008 | |
Krita | Ano | Krita Nightly 5.0.0 pre-alfa (od 22. února 2021) | |
qZobrazit | Pouze ke čtení | v. 4.0 (31. října 2020) | |
Prohlížecí motory |
WebKit | Ano | (17. března 2015) |
Blikat | Ano | Června 2017 | |
Webové prohlížeče |
Mozilla Firefox ( Gecko layout engine ) |
Ano | v. 3 (17. června 2008) |
SeaMonkey ( Gecko layout engine ) |
Ano | v. 2 | |
Iceweasel a další rebrandování Debianu ( Gecko layout engine ) |
Ano | v. 4,0 ~ b12 | |
Safari ( modul rozložení WebKit ) |
Ano | v. 8.0 | |
Google Chrome a Chromium ( modul rozložení Blink ) |
Ano | v. 59 (5. června 2017) | |
Internet Explorer ( Trident layout engine ) |
Ne | N/A | |
Microsoft Edge ( modul rozložení EdgeHTML ) |
Ne | N/A | |
Microsoft Edge ( modul rozložení Blink ) |
Ano | v. 79 | |
Opera v12 a starší ( rozvržení motoru Presto ) |
Ano | v. 9.5 (12. června 2008) | |
Opera 15 a novější ( Blink layout engine ) |
Ano | v. 46,0 (22. června 2017) | |
Pale Moon ( Goanna layout engine ) | Ano | v. 27 | |
Mobilní prohlížeče |
iOS Safari | Ano | v. 8.0 |
Firefox pro Android | Ano | ? | |
Internet Samsung pro Android | Ano | v. 7.0 | |
Opera Mobile | Ano | ? |
Existuje knihovna na straně serveru, která umožňuje webovým prohlížečům, které podporují značku canvas , ale nepodporují APNG, zobrazovat APNG. Mezi příklady takových prohlížečů patří Microsoft Edge a Internet Explorer 9.