ZSoft PCX (.pcx)

ZSoft Стандарт

ZSoft PC Paintbrush Bitmap (PCX) е легендарният ранен графичен формат за персонални компютри, който се превръща в първия широко приет стандарт за растерни изображения за MS-DOS, IBM PC съвместими системи и класически компютърни игри.

Конвертиране на PCX към PNG

Безплатен конвертор от PCX към PNG в браузъра. Конвертирайте файлове незабавно на вашето устройство.

Инспектиране и метаданни

Операционните системи и файловите анализатори идентифицират PCX файлове чрез проверка на началната двоична байтова последователност:

Изберете или пуснете файлове тук

100% поверително конвертиране в браузъра - файловете никога не напускат вашето устройство

или поставете Ctrl+V
Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Байтов подпис на хедъра (Magic Bytes)

Операционните системи и файловите анализатори идентифицират PCX файлове чрез проверка на началната двоична байтова последователност:

HEX ПОДПИС (ОФСЕТ 0):

0A 05 01

ASCII ПРЕДСТАВЯНЕ: ...

Стандартизация: 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 (Текущ)BMPGIFPNG
Активна ера1985 - 1995 (Златната ера на MS-DOS)1990 - до днес (Стандарт за Windows)1987 - до днес (Уеб стандарт)1996 - до днес (Съвременен уеб стандарт)
Алгоритъм за компресияRLE компресия с побитово изпълнениеНекомпресирано / RLELZW компресия без патенти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 серията надвишава ширината на реда за сканиране, което води до запис в паметта извън границите на буфера.
  • Препълване на буфера при четене на равнини извън броя равнини, деклариран в заглавната част.
  • Отказ от услуга чрез повредени изчисления на отместването на палитрата.

Защитни добри практики:

Исторически произход и етапи

1993id Software издава DOOM, използвайки формата PCX за заглавни екрани, менюта и текстури.
1988PCX Ревизия 5 въвежда поддръжка за 256-цветови VGA палитри, съхранени в края на файла.
1985ZSoft представя PCX заедно с PC Paintbrush, пакетиран с хардуера на Microsoft Mouse.

Основни предимства и плюсове

  • Богато историческо значение: основополагащ формат на раната компютърна игрална и 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-цветови декодери.