Výměna obrázků

Příjmení PCX
zkratka PCX
přípona souboru .pcx
Výrobce ZSoft, 1982
Barevný prostor Monochromatická paleta ve
stupních šedi RGB

Barevná hloubka 1 bit - 2 barvy
4 bit - 16 barev
8 bit - 256 barev
24 bit - 16,7 milionu
komprese bez
RLE (bezztrátový)
Byte order Malý Endian

Picture exchange ( PCX ) je formát souboru pro ukládání obrazových dat .

Formát PCX byl vyvinut v roce 1982 společností ZSoft a použit ve vlastních produktech Paintbrush a FRIEZE (rezidentní pomocný program pro import obrázků z jiných aplikací, např. Lotus 1-2-3 ). Dnes je formát sotva podporován většinou grafických programů .

V době vývoje PCX byly k dispozici pouze grafické adaptéry Hercules a CGA . V průběhu let se grafické karty zlepšily a objevily se nové grafické režimy ( EGA , MCGA, VGA ). Ty pak byly pokryty novějšími verzemi formátu PCX. Změny definice formátu byly v zásadě omezeny na paletu barev.

Struktura souboru PCX

obecná struktura

Záhlaví (128 bajtů)
Obrazová data
Paleta barev (volitelná, pouze s 256 barvami)

Záhlaví

Bez ohledu na verzi mají soubory PCX záhlaví 128 bajtů.

Ofset Bajty důležitost
0 1 Identifikace: 10 (0A hex ) = soubor PCX
1 1 Verze souboru PCX:
0 = verze 2.5
2 = verze 2.8 s paletou
3 = verze 2.8 bez palety
4 = okna bez palety
5 = verze 3.0
2 1 Komprese
0 = žádná
1 = kódování RLE
3 1 Bitů na pixel (nebo na rovinu)
4. místo 8. Souřadnice původního
obrázku XMIN, YMIN, XMAX, YMAX
12 2 horizontální rozlišení v DPI (body na palec)
14 2 vertikální rozlišení v DPI (body na palec)
16 48 Barevná mapa s definicí palety barev.
Organizováno jako 16 * 3 bajtové pole.
64 1 Rezervováno
65 1 Počet úrovní barev (rovin), max
66 2 Bajty na řádek obrázku (sudé číslo)
68 2 Informace o paletě
1 = Barva - ČB
2 = Stupně šedi
70 2 Šířka obrazovky v pixelech
72 2 Výška obrazovky v pixelech
74 54 Prázdné bajty k vyplnění záhlaví

Obrazová data

Bez komprese je každý barevný bajt indexem (odkazem) na barevnou paletu. Při kompresi jsou také možné délkové bajty, které určují, jak často se má opakovat následující barevný bajt ( kódování délky běhu ). Komprese je proto zvláště účinná u grafiky s velkými jednobarevnými plochami. Bajty délky jsou rozpoznány podle skutečnosti, že jsou nastaveny jejich dva nejvyšší bity. Zbývající bity se používají k určení délky, takže maximální délka, kterou lze zadat, je 63 bajtů. Jednotlivé barevné bajty lze zadat přímo. Musí být uvedeny pouze s předchozím bajtem délky s hodnotou 193, pokud je jejich hodnota 192 nebo více, jinak by byly interpretovány jako bajt délky.

Paleta barev

Barevné palety s více než 16 barvami jsou uvedeny za obrazovými daty. V tomto případě se mezi obrazová data a paletu vloží bajt s hodnotou 12. Poté následují tři barevné bajty pro hodnotu RGB pro každý barevný index .

Barevné roviny

Zvláštností formátu PCX je ukládání obrazových dat v barevných rovinách. Kódující pořadí je osa Y> barva rovina> X-ose . To je na jedné straně způsobeno skutečností, že PCX (na rozdíl od BMP ) je formát související s hardwarem, který představuje (komprimovaný) obraz paměti obrazovky, a na druhé straně, že obrázky Truecolor nebo obrázky s dithering lze lépe komprimovat pomocí kódování délky běhu.

Podle oficiálního standardu PCX se „běhy“ RLE mohou rozšířit na několik barevných úrovní, ale některé dekodéry to nepodporují. Kvůli dobré kompatibilitě by se tomu kodéry měli vyhnout, zatímco dekodéry by to měly podporovat. Běhy nikdy nemohou překlenout více řádků.

Běžné formáty

Barevná hloubka Bitů na úroveň Úrovně sekvence původ
1 (2 barvy) 1 1 - MDA / Hercules monochromatický
2 (4 barvy) * 2 1 - Barevný režim CGA 4
4 (16 barev) 1 4. místo Modrozelená-červená intenzita ** 16barevný režim EGA
8 (256 barev) 8. 1 Paleta: červeno-zeleno-modrá Barevný režim VGA 256
24 (truecolor) 8. 3 Červeno-zeleno-modrá Žádné ***

Poznámky

 * 2bitový barevný režim byl zastaralý a standard již není oficiálně podporován.
 ** Ve skutečnosti určuje paleta, ale toto uspořádání je nejběžnější.
 *** Běžné grafické karty používají sekvenci modro-zeleno-červenou a zobrazují pixely jako 32bitové bloky.

literatura

  • Thomas W. Lipp: Grafické formáty. Microsoft Press, Unterschleißheim 1997, ISBN 3-86063-391-0
  • Günter Born: Referenční formáty ručních souborů. Addison-Wesley, Bonn 1997, ISBN 3-8273-1241-8

Individuální důkazy

  1. Soubor MARBLES.PCX je příkladem běhů přes několik barevných úrovní: https://www.fileformat.info/format/pcx/sample/index.htm