PCX
Z Wikipedii
PCX to format przechowywania i kompresji obrazków, używający algorytmu kompresji bezstratnej RLE. PCX był oryginalnie formatem przeznaczonym do indeksowanych palet kolorów, choć został też przystosowany do koloru 24-bitowego. PCX był dość popularny we wczesnych latach DOS i Windows, lecz współcześnie jest już rzadki, zastąpiony przez formaty oferujące lepszą kompresje i dodatkowe możliwości - GIF, JPEG i PNG.
[edytuj] Algorytm kompresji obrazków z 8-bitowym kolorem
Dekompresja jest bardzo prosta - każdy bajt z przedziału 0x00 do 0xc0 koduje pojedynczy piksel o danej wartości. Bajty z przedziału 0xc1 do 0xff oznaczają że kolejne odpowiednio 1 do 63 pikseli ma ten sam kolor, którego wartość jest zawarta w następnym bajcie. Kolory 0xc1 do 0xff są kodowane jako 0xc1 KOLOR.
Ponieważ kolory 0x00 do 0xc0 kompresują się lepiej niż 0xc1 do 0xff, dobra kolejność kolorów w palecie jest ważna. Zazwyczaj, choć nie zawsze, wystarczy umieścić częściej używane kolory w pozycjach 0x00 do 0xc0, a rzadziej używane w pozycjach 0xc1 do 0xff. W pełni optymalny algorytm sortuje kolory na podstawie ilości wystąpień ich ciągów o długości 1+63 × N dla N całkowitych nieujemnych. Tylko takie bowiem ciągi można zapisać bez używania prefiksów.
Algorytm kompresji jest bardzo szybki i zabiera bardzo mało pamięci, jednak jest mało wydajny, w szczególności na obrazkach innych niż wygenerowane komputerowo.
Obrazki 24-bitowe kompresuje się stosując podany algorytm do każdego kanału osobno.
Zobacz też: BMP, przegląd zagadnień z zakresu DTP.