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 байт, за которым следуют строки развертки с RLE-сжатием и необязательная палитра из 256 цветов в конце
СжатиеПобайтное кодирование длин серий (RLE) с битами индикатора счетчика 0xC0
Порядок байтов (Endianness)Обратный порядок байтов (Intel x86)
Цветовые пространства4-цветная CGA, 16-цветная EGA или 256-цветная палитра VGA RGB
Каналы и структура1-, 2-, 4- или 8-битные с палитрой, либо 24-битные планарные RGB (3 плоскости 8-битных данных)
Макс. габариты65 535 x 65 535 пикселей (16-битные координаты)
ПрозрачностьОтсутствует (непрозрачный устаревший растр)
Потоковая передача и прогрессивная загрузкаПострочное воспроизведение сканируемых строк

Техническая матрица сравнения: PCX против конкурентов

Технический атрибутPCX (Текущий)BMPGIFPNG
Период активности1985 - 1995 (золотой век MS-DOS)1990 - по настоящее время (стандарт Windows)1987 - по настоящее время (стандарт интернета)1996 - по настоящее время (современный веб-стандарт)
Алгоритм сжатияПобайтное RLE-сжатиеБез сжатия / RLEСжатие LZW без патентовСжатие Deflate LZ77
Цветовая архитектураБитовые плоскости EGA/VGA и палитраСтроки развертки DIBИндексированные 256 цветовПолноцветный 24/48-битный + альфа
Расположение палитрыДобавлено в конец файла (EOF) (768 байт)Рядом с заголовком файлаРядом с заголовком файлаВстроенный блок PLTE

Типичные режимы повреждения и руководство по восстановлению в HEX

Цвета изображения отображаются полностью инвертированными или искаженными, напоминая психоделический негатив.

Первопричина: Отсутствующий или обрезанный блок 256-цветной палитры VGA в конце файла.

Восстановление: Повторно примените стандартную палитру VGA или выполните перекодирование в PNG с помощью конвертера PCX от File2File.

Анализ безопасности и векторы атак на парсер

Декодеры PCX обрабатывают закодированные с помощью длин серий байты в строки развертки, где поврежденные счетчики серий могут вызвать переполнение буфера в куче.

Известные векторы атак

  • Длина цепочки байтов RLE превышает ширину строки развертки, что приводит к записи памяти за пределами границ буфера.
  • Переполнение буфера при чтении плоскостей сверх количества плоскостей, заявленного в заголовке.
  • Отказ в обслуживании из-за поврежденных расчетов смещения палитры.

Защитные лучшие практики: Обеспечивайте строгие ограничения байтов пикселей на строку развертки во время циклов распаковки RLE.

Исторические истоки и вехи

1993Компания id Software выпускает DOOM, используя формат PCX для титульных экранов, меню и графики текстур.
1988В PCX Revision 5 добавлена поддержка 256-цветных палитр VGA, сохраняемых в конце файла.
1985Компания ZSoft представляет PCX вместе с редактором PC Paintbrush, поставлявшимся в комплекте с аппаратными средствами мыши Microsoft.

Ключевые преимущества и плюсы

  • Богатое историческое значение: базовый формат ранней эпохи игр для 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 в 1980-х годах, которая часто поставлялась в комплекте с мышами Microsoft.

Могу ли я конвертировать старый файл PCX в PNG или JPG?

Да. File2File.app может конвертировать исторические игровые текстуры и графику PCX в четкие современные изображения PNG или JPG прямо в вашем браузере.

Почему палитра цветов находится в конце файла PCX?

Когда в 1988 году появился 256-цветный формат VGA, компания ZSoft добавила 768-байтную палитру RGB в конец файла перед маркером 0x0C для сохранения обратной совместимости со старыми 16-цветными декодерами.