מהו קובץ PCX?
קובץ PCX, קובץ Picture Exchange, הוא פורמט קובץ תמונת רסטר ששימש כפורמט קובץ מקורי עבור יישום PC Paintbrush. הוא פותח על ידי ZSoft Corporation, ארה"ב עבור פלטפורמות DOS ו-Windows ואומץ כפורמט קובץ ההדמיה הראשי לפני הגעתם של BMP, JPEG ו- PNG פורמטים של קבצים. קבצי PCX קטנים יותר בגודלם מכיוון שהם נדחסים באמצעות קידוד RLE. הוא משמש בקובץ DCX מרובה עמודים המשמש בעיקר ליצירת קובצי פקס דיגיטליים.
פורמט קובץ PCX
קבצי PCX נשמרים על דיסק בפורמט קובץ בינארי. מבנה הפורמט הפנימי של הקבצים עוקב אחר סדר בתים של אנדיאן קטן ויש לו את שלושת הסעיפים הבאים:
PCX Header
- כותרת PCX היא באורך 128 בתים. הוא מכיל מזהה, מספר גרסה, ממדי תמונה, 16 צבעי לוח, מישורי צבע מספרים ועומק סיביות של כל מישור, וערך עבור שיטת הדחיסה.
כותרת PCX היא כפי שמוצג להלן עם הפניה מאנציקלופדיה של פורמטים של קבצים גרפיים (מהדורה שנייה).
typedef struct _PcxHeader
{
BYTE Identifier; /* PCX Id Number (Always 0x0A) */
BYTE Version; /* Version Number */
BYTE Encoding; /* Encoding Format */
BYTE BitsPerPixel; /* Bits per Pixel */
WORD XStart; /* Left of image */
WORD YStart; /* Top of Image */
WORD XEnd; /* Right of Image
WORD YEnd; /* Bottom of image */
WORD HorzRes; /* Horizontal Resolution */
WORD VertRes; /* Vertical Resolution */
BYTE Palette[48]; /* 16-Color EGA Palette */
BYTE Reserved1; /* Reserved (Always 0) */
BYTE NumBitPlanes; /* Number of Bit Planes */
WORD BytesPerLine; /* Bytes per Scan-line */
WORD PaletteType; /* Palette Type */
WORD HorzScreenSize; /* Horizontal Screen Size */
WORD VertScreenSize; /* Vertical Screen Size */
BYTE Reserved2[54]; /* Reserved (Always 0) */
} PCXHEAD;
נתוני תמונה
- נתוני תמונה של PCX מופיעים ממש אחרי הכותרת. נתוני התמונה עשויים להיות דחוסים בהתאם להגדרת השדה בכותרת. אחסון הנתונים בקובץ PCX תלוי במספר מישורי הצבע שצוינו. נתוני התמונה מאורגנים בשורות. במקרה של מספר מישורים, אלה מאוחסנים לפי מישור בתוך שורה בסידור רציף של נתונים אדומים, ירוקים וכחולים. דפוס זה חוזר על עצמו עבור כל שורה במישור.