You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.9 KiB
62 lines
1.9 KiB
// |
|
// mxToolKit (c) 1999 by Mete Ciragan |
|
// |
|
// file: mxPcx.h |
|
// implementation: all |
|
// last modified: Apr 15 1999, Mete Ciragan |
|
// copyright: The programs and associated files contained in this |
|
// distribution were developed by Mete Ciragan. The programs |
|
// are not in the public domain, but they are freely |
|
// distributable without licensing fees. These programs are |
|
// provided without guarantee or warrantee expressed or |
|
// implied. |
|
// |
|
#ifndef INCLUDED_MXPCX |
|
#define INCLUDED_MXPCX |
|
|
|
|
|
|
|
#ifndef INCLUDED_MXIMAGE |
|
#include "mxtk/mxImage.h" |
|
#endif |
|
|
|
|
|
|
|
typedef struct |
|
{ |
|
byte manufacturer; /* 10 = ZSoft .pcx */ |
|
byte version; /* 0 = Version 2.5 of PC Paintbrush |
|
2 = Version 2.8 w/palette information |
|
3 = Version 2.8 w/o palette information |
|
4 = PC Paintbrush for Windows(Plus for |
|
Windows uses Ver 5) |
|
5 = Version 3.0 and > of PC Paintbrush |
|
and PC Paintbrush +, includes |
|
Publisher's Paintbrush . Includes |
|
24-bit .PCX files */ |
|
byte encoding; /* 1 = .pcx rle encoding */ |
|
byte bitsPerPixel; /* 1, 2, 4, 8 per plane */ |
|
word xmin; |
|
word ymin; |
|
word xmax; |
|
word ymax; |
|
word hDpi; |
|
word vDpi; |
|
byte colorMap[48]; |
|
byte reserved; /* should be set to 0 */ |
|
byte numPlanes; /* number of color planes */ |
|
word bytesPerLine; /* MUST be EVEN number */ |
|
word paletteInfo; /* 1 = color, 2 = grayscale */ |
|
word hScreenSize; |
|
word vScreenSize; |
|
byte filler[54]; /* set all to 0 */ |
|
} mxPcxHeader; |
|
|
|
|
|
|
|
mxImage *mxPcxRead (const char *filename); |
|
bool mxPcxWrite (const char *filename, mxImage *image); |
|
|
|
|
|
|
|
#endif // INCLUDED_MXPCX
|
|
|