ZSoft PCX (.pcx)

ZSoft Tiêu chuẩn

Bitmap ZSoft PC Paintbrush (PCX) là định dạng đồ họa PC thời kỳ đầu huyền thoại, trở thành tiêu chuẩn hình ảnh raster được áp dụng rộng rãi đầu tiên cho MS-DOS, các dòng máy tương thích IBM PC và các trò chơi PC cổ điển.

Chuyển đổi PCX sang PNG

Trình chuyển đổi từ PCX sang PNG miễn phí trên trình duyệt. Chuyển đổi tệp ngay lập tức trên thiết bị của bạn.

Kiểm tra & Siêu dữ liệu

Các hệ điều hành và trình phân tích tệp nhận dạng tệp PCX bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

Chọn hoặc thả tệp vào đây

Riêng tư - tệp không bao giờ rời khỏi thiết bị của bạn

Hoặc dán Ctrl+V
Cam kết bảo vệ quyền riêng tư, không truyền dữ liệu qua mạng: 0 byte được tải lên máy chủ bên ngoài. Toàn bộ quá trình xử lý diễn ra cục bộ trong hộp cát trình duyệt của bạn.

Chữ ký ở đầu tệp (mẫu byte nhận diện)

Các hệ điều hành và trình phân tích tệp nhận dạng tệp PCX bằng cách kiểm tra chuỗi byte nhị phân đầu tệp:

CHỮ KÝ HEX (OFFSET 0):

0A 05 01

BIỂU DIỄN ASCII: ...

Tiêu chuẩn hóa: ZSoft PC Paintbrush Technical Reference Manual

Thông số kỹ thuật

Kiến trúc ContainerTiêu đề cố định 128 byte, tiếp theo là dòng quét nén RLE và tùy chọn bảng màu 256 màu ở cuối
NénMã hóa độ dài chuỗi (RLE) theo byte, dùng các bit chỉ báo số lượng 0xC0
Thứ tự byteLittle-endian (Intel x86)
Không gian màuRGB bảng màu CGA 4 màu, EGA 16 màu hoặc VGA 256 màu
Kênh & Cấu trúcẢnh bảng màu 1, 2, 4 hoặc 8 bit, hoặc RGB 24 bit dạng phẳng (3 mặt phẳng dữ liệu 8 bit)
Kích thước tối đa65.535 x 65.535 điểm ảnh (tọa độ 16 bit)
Độ trong suốtKhông có (ảnh raster cũ không trong suốt)
Truyền phát & Tăng dầnPhát tuần tự từng dòng quét

Ma trận so sánh kỹ thuật: PCX so với các đối thủ

Thuộc tính kỹ thuậtPCX (Hiện tại)BMPGIFPNG
Thời kỳ hoạt động1985 - 1995 (Thời hoàng kim MS-DOS)1990 - Hiện tại (Tiêu chuẩn Windows)1987 - Hiện tại (Tiêu chuẩn Web)1996 - Hiện tại (Tiêu chuẩn web hiện đại)
Thuật toán nénNén RLE chạy theo byte (Byte-run)Không nén / RLENén không có bằng sáng chế LZWNén Deflate LZ77
Kiến trúc màuMặt phẳng bit EGA/VGA & sử dụng bảng màuCác dòng quét DIBĐã lập chỉ mục 256 màuMàu thực Truecolor 24/48-bit + Alpha
Vị trí bảng màuNối ở cuối tệp EOF (768 byte)Gần tiêu đề tệpGần tiêu đề tệpKhối PLTE được nhúng

Các dạng hỏng thường gặp và hướng dẫn khôi phục bằng mã hex

Màu sắc hình ảnh hiển thị bị đảo ngược hoàn toàn hoặc bị nhiễu giống như một bức ảnh âm bản ảo giác.

Nguyên nhân gốc rễ: Khối bảng màu VGA 256 màu ở cuối tệp bị thiếu hoặc bị cắt cụt.

Khắc phục: Áp dụng lại bảng màu VGA mặc định hoặc chuyển mã sang PNG bằng File2File.app PCX Converter.

Phân tích bảo mật và các đường tấn công nhằm vào bộ phân tích cú pháp

Bộ giải mã PCX xử lý các byte được mã hóa theo độ dài chuỗi thành các dòng quét, trong đó số lượng chuỗi bị lỗi có thể gây ra lỗi tràn bộ đệm heap.

Các véc-tơ tấn công đã biết

  • Độ dài chuỗi byte RLE vượt quá chiều rộng dòng quét gây ra việc ghi bộ nhớ vượt qua ranh giới bộ đệm.
  • Tràn bộ đệm khi đọc các mặt phẳng vượt quá số lượng mặt phẳng được khai báo trong tiêu đề.
  • Từ chối dịch vụ thông qua việc tính toán độ lệch bảng màu bị hỏng.

Biện pháp phòng thủ tốt nhất: Áp dụng các giới hạn nghiêm ngặt về byte pixel trên mỗi dòng quét trong các vòng lặp giải nén RLE.

Nguồn gốc lịch sử và các cột mốc

1993id Software phát hành DOOM, sử dụng định dạng PCX cho màn hình tiêu đề, menu và đồ họa kết cấu (texture).
1988PCX Phiên bản 5 giới thiệu hỗ trợ cho bảng màu VGA 256 màu được lưu trữ ở cuối tệp.
1985ZSoft giới thiệu PCX cùng với PC Paintbrush, đi kèm với phần cứng Microsoft Mouse.

Ưu điểm & Lợi ích chính

  • Ý nghĩa lịch sử phong phú: định dạng nền tảng của cuộc cách mạng chơi game và phần mềm chia sẻ IBM PC thời kỳ đầu.
  • Bố cục bộ nhớ phẳng hướng phần cứng cho phép sao chép trực tiếp vào bộ nhớ thẻ video EGA/VGA.
  • Nén RLE trọng lượng nhẹ giúp giảm kích thước tệp của các hình minh họa và sơ đồ ít màu.

Hạn chế & Nhược điểm kỹ thuật

  • PCX hiện ít phổ biến trong nhiều quy trình, vốn thường ưu tiên PNG và định dạng raster mới hơn.
  • Bảng màu VGA 256 màu được nối vào tận cùng của tệp, đòi hỏi phải đọc toàn bộ tệp để giải mã màu.
  • Nén kém hiệu quả trên hình ảnh nhiếp ảnh phức tạp.

Thông tin kỹ thuật thú vị

  • Byte đầu tiên của mọi tệp PCX luôn là 0x0A (hệ thập phân 10), đại diện cho mã định danh nhà sản xuất nội bộ của ZSoft.
  • Để kiểm tra xem một tệp PCX 8-bit có bảng màu 256 màu hay không, bạn di chuyển đến vị trí cách cuối tệp 769 byte và kiểm tra byte 0x0C (hệ thập phân 12).
  • Các trò chơi PC cổ điển bao gồm Wolfenstein 3D, DOOM và Duke Nukem 3D đã lưu trữ ảnh chụp màn hình quảng cáo và nghệ thuật menu của chúng ở định dạng PCX.

Các câu hỏi kỹ thuật thường gặp

Chương trình nào đã tạo ra các tệp .PCX?

ZSoft PC Paintbrush, chương trình đồ họa phổ biến đầu tiên dành cho máy tính IBM PC vào những năm 1980, thường được bán kèm với chuột Microsoft.

Tôi có thể chuyển đổi tệp PCX cũ sang PNG hoặc JPG không?

Có. File2File.app có thể chuyển đổi các kết cấu trò chơi và tác phẩm nghệ thuật PCX từ xưa thành hình ảnh PNG hoặc JPG hiện đại sắc nét trực tiếp trong trình duyệt của bạn.

Tại sao bảng màu lại nằm ở cuối tệp PCX?

Khi VGA 256 màu được giới thiệu vào năm 1988, ZSoft đã nối thêm bảng màu RGB 768 byte vào cuối tệp với tiền tố là mã đánh dấu 0x0C để duy trì khả năng tương thích ngược với các bộ giải mã 16 màu cũ hơn.