ZSoft PCX (.pcx)
ZSoft СтандартZSoft PC Paintbrush Bitmap (PCX) е легендарният ранен графичен формат за персонални компютри, който се превръща в първия широко приет стандарт за растерни изображения за MS-DOS, IBM PC съвместими системи и класически компютърни игри.
Конвертиране на PCX към PNG
Безплатен конвертор от PCX към PNG в браузъра. Конвертирайте файлове незабавно на вашето устройство.
Инспектиране и метаданни
Операционните системи и файловите анализатори идентифицират PCX файлове чрез проверка на началната двоична байтова последователност:
Байтов подпис на хедъра (Magic Bytes)
Операционните системи и файловите анализатори идентифицират PCX файлове чрез проверка на началната двоична байтова последователност:
HEX ПОДПИС (ОФСЕТ 0):
0A 05 01ASCII ПРЕДСТАВЯНЕ: ...
Стандартизация: ZSoft PC Paintbrush Technical Reference Manual
Технически спецификации
| Контейнерна архитектура | 128-byte fixed header followed by RLE-compressed scanlines and optional trailing 256-color palette |
| Компресия | Byte-oriented run-length encoding (RLE) with 0xC0 count indicator bits |
| Поредност на байтовете (Endianness) | Little-Endian (Intel x86) |
| Цветови пространства | CGA 4-color, EGA 16-color, or VGA 256-color paletted RGB |
| Канали и структура | 1, 2, 4, or 8-bit paletted, or 24-bit RGB planar (3 planes of 8-bit data) |
| Максимални размери | 65,535 x 65,535 pixels (16-bit coordinates) |
| Прозрачност | None (opaque legacy raster) |
| Стрийминг и прогресивно зареждане | Sequential scanline-by-scanline playback |
Техническа сравнителна матрица: PCX спрямо конкуренти
| Технически атрибут | PCX (Текущ) | BMP | GIF | PNG |
|---|---|---|---|---|
| Активна ера | 1985 - 1995 (Златната ера на MS-DOS) | 1990 - до днес (Стандарт за Windows) | 1987 - до днес (Уеб стандарт) | 1996 - до днес (Съвременен уеб стандарт) |
| Алгоритъм за компресия | RLE компресия с побитово изпълнение | Некомпресирано / RLE | LZW компресия без патенти | Deflate LZ77 компресия |
| Цветова архитектура | EGA/VGA битови равнини и палитра | DIB редове за сканиране | Индексирани 256 цвята | Truecolor 24/48-bit + алфа |
| Местоположение на палитрата | Добавена в края на файла (EOF) (768 байта) | Близо до заглавната част на файла | Близо до заглавната част на файла | Вграден PLTE блок |
Често срещани режими на повреда и ръководство за хекс възстановяване
Цветовете на изображението се изобразяват напълно обърнати или разбити като психоделичен негатив.
Първопричина: Липсващ или прекъснат блок на 256-цветовата VGA палитра в края на файла.
Възстановяване: Приложете отново стандартната VGA палитра или трансхродирайте към PNG с помощта на File2File PCX Converter.
Анализ на сигурността и вектори на атака към парсера
PCX декодерите обработват байтовете с кодиране на дължината на серията (RLE) в редове за сканиране, където дефектният брой серии може да доведе до препълване на динамичната памет (heap buffer overflow).
Известни вектори на атака
- Дължината на RLE серията надвишава ширината на реда за сканиране, което води до запис в паметта извън границите на буфера.
- Препълване на буфера при четене на равнини извън броя равнини, деклариран в заглавната част.
- Отказ от услуга чрез повредени изчисления на отместването на палитрата.
Защитни добри практики:
Исторически произход и етапи
Основни предимства и плюсове
- Богато историческо значение: основополагащ формат на раната компютърна игрална и shareware революция за IBM PC.
- Хардуерно ориентираното планарно разположение на паметта позволява директно копиране в паметта на видеокартата EGA/VGA.
- Леката RLE компресия намалява файловите размери на илюстрации и диаграми с малко цветове.
Технически ограничения и минуси
- Остаряване: практически всички модерни работни процеси са преминали към PNG и модерни растерни формати.
- 256-цветовата VGA палитра е добавена в самия край на файла, което изисква пълно четене на файла за декодиране на цветовете.
- Неефективна компресия върху сложни фотографски изображения.
Интересни технически факти
- Първият байт на всеки PCX файл винаги е 0x0A (десетично 10), което представлява вътрешното идентификационно число на производителя ZSoft.
- За да проверите дали 8-битов PCX файл има 256-цветова палитра, отивате на 769 байта от края на файла и проверявате за байт 0x0C (десетично 12).
- Класически компютърни игри, включително Wolfenstein 3D, DOOM и Duke Nukem 3D, съхраняваха своите промоционални екранни снимки и графика на менютата във формат PCX.
Често задавани технически въпроси
Коя програма е създала .PCX файловете?
ZSoft PC Paintbrush, първата популярна графична програма за IBM PC през 80-те години на миналия век, която често се е предлагала в комплект с мишки на Microsoft.
Мога ли да конвертирам стар винтидж PCX файл в PNG или JPG?
Да. File2File.app може да конвертира исторически PCX текстури от игри и произведения на изкуството в отчетливи модерни PNG или JPG изображения директно в браузъра ви.
Защо цветовата палитра е в края на PCX файла?
Когато през 1988 г. е въведен 256-цветовият VGA режим, ZSoft добавя 768-байтовата RGB палитра в края на файла, предварена от маркера 0x0C, за да поддържа обратна съвместимост с по-стари 16-цветови декодери.