PNG (Portable Network Graphics) to format plików graficznych oraz system bezstratnej kompresji danych graficznych.
PNG został opracowany jako następca GIF w 1995 roku po ogłoszeniu przez Unisys oraz CompuServe roszczeń patentowych dotyczących kompresji LZW używanej w formatach GIF oraz TIFF.
Grafika
Pomijając kwestie patentowe przestarzałego formatu GIF, główna przewaga PNG polega na obsłudze stopniowanej przezroczystości (tzw. kanału alfa) i na akceptowaniu
mniejszej, niż 8-bitowa, głębi koloru (<256 kolorów). Ograniczona paleta barw, przekładająca się na zmniejszenie rozmiaru pliku, szczególnie dobrze zdaje egzamin przy wykonywaniu tzw. zrzutów ekranowych i przy skanowaniu materiałów papierowych: grafik, dokumentów, map. Czarno-biała grafika w 4-bitowej skali szarości prezentuje się bez zarzutu. Także większość schematów (z pieczątkami i naniesionymi odręcznie notatkami w kolorze) wygląda czytelnie po znacznym ograniczeniu liczby kolorów. Warto mieć na uwadze, iż w przypadku materiałów skanowanych na efektywniejsze działanie algorytmu kompresji (mniejszy rozmiar pliku) wpływa zwiększenie kontrastu.
Fotografia
Format PNG znajduje różne zastosowania. Prócz już opisanej, celowej redukcji kolorów, przydatnej w sytuacjach, gdy nadmiarowa informacja jest niewskazana (tj. gdy ważniejsza od subiektywnej wierności oryginałowi jest treść obrazu), można w PNG zapisywać np. szczególnie cenne fotografie z bezkompromisową jakością. Oznacza to np. miliony kolorów (co najmniej 20
bpp) i brak jakichkolwiek zniekształceń właściwych formatom stratnym, do jakich należy np. popularny
JPG.
Wybrane narzędzia
Obecnie nawet proste narzędzia graficzne (jak np. popularny, bezpłatny
IrfanView na platformę
Microsoft Windows) umożliwiają już dowolną, ręczną redukcję koloru. Narzędzia bardziej zaawansowane (jak np. również darmowy, ale już wieloplatformowy
GIMP) oferują pracę na warstwach oraz automatyczną redukcję liczby kolorów, dostępną po przełączeniu z palety
RGB (
Red-Green-Blue) na tzw.
kolor indeksowany. W tym trybie możliwe staje się zapisanie tylko niezbędnych informacji - np. o kolorach dominujących.
Inne formaty bezstratne
W dziedzinie archiwizacji fotografii format PNG okazuje się bardziej efektywny od starszych, uznanych, "profesjonalnych" formatów bezstratnych takich jak
TIFF i tylko nieznacznie mniej efektywny od formatów najnowszych - jak
LWF czy
JPEG 2000 - posiadających funkcję kompresji bezstratnej. Te ostatnie wciąż nie stanowią jednak realnej konkurencji z powodu małego rozpowszechnienia i braku wsparcia w oprogramowaniu użytkowym.
Stopień kompresji
Mniej istotna cecha formatu PNG to możliwość zmiany stopnia wewnętrznej kompresji. Wartość domyślna, wynosząca 6, jest kompromisem między jeszcze dobrą szybkością algorytmu a rozsądnym, wynikowym rozmiarem pliku. Taki kompromis nie wydaje się jednak celowy w "zastosowaniach sieciowych" (w jakich PNG zdaje się dominować), stąd zwykle ustawiany jest maksymalny, dziewiąty stopień.
Przyszłość
Format PNG zalecany jest przez konsorcjum W3C jako najlepszy format grafiki dla sieci
WWW. Szacuje się, iż PNG w sieciach WWW zostanie częściowo wyparty w następnych latach przez grafikę
SVG. Dotyczy to takich obszarów jak choćby grafika prezentacyjna czy schematy blokowe, bo np. archiwizacja materiałów papierowych (przez skanowanie) powinna jednak pozostać domeną formatów binarnych - takich jak PNG.
Z drugiej strony maleją szanse na powstrzymanie przez PNG ekspansji formatu PDF i usprawnienie np. korporacyjnego obiegu dokumentów w formie załączników do poczty elektronicznej. Przewaga PNG, polegająca na plikach o niewielkich rozmiarach (warunek: zoptymalizowanych), jak również małych i szybkich programach graficznych do ich prezentacji, traci na znaczeniu wobec stale rosnącej mocy obliczeniowej komputerów.
Szczegóły techniczne
Format PNG zapisuje tylko pojedyncze pliki graficzne (nie ma animacji). Analogicznym formatem mającym możliwość zapisu sekwencji grafiki animowanej w jednym pliku (np. prostych animacji) jest
MNG.
Kompresja polega na dokonaniu jednej z transformacji każdej z linii obrazu, po czym wynik jest kompresowany za pomocą algorytmu deflate. Numer transformacji jest zapisywany przed linią.
Transformacje mają na celu przystosowanie danych do łatwiejszej kompresji. Zapisują one różnicę między wartością rzeczywistą piksela a wartością obliczoną na podstawie funkcji przewidującej, działającej w oparciu o bity już odkodowane. Zwykle różnica ta jest niewielka.
Funkcje przewidujące to m.in.:
- tyle samo co piksel po lewej
- tyle samo co średnia wartości pikseli po lewej i na górze
- tyle samo co suma wartości pikseli po lewej i na górze minus piksel po lewej górnej przekątnej
PNG jest określony standardem RFC 2083. Używany przez niego algorytm deflate jest określony w RFC 1951.
Zobacz również
Linki zewnętrzne
Grafika komputerowa | Kompresja | Formaty
PNG | PNG | PNG | Portable Network Graphics | Portable Network Graphics | PNG | PNG | PNG | PNG | Portable Network Graphics | PNG | PNG | Portable Network Graphics | PNG | PNG | Portable Network Graphics | Portable Network Graphics | Portable Network Graphics | PNG | PNG | PNG | PNG | PNG | PNG | PNG | PNG | PNG