bmpFile(API)
提供: Eospedia
DataManip/bmpFileはビットマップファイルを取り扱うためのAPI です。
定数
typedef struct bmpFileHeader {
char bfType[2]; // BM
unsigned int bfSize; // FileSize [Byte]
char bfReserved1[2];
char bfReserved2[2];
unsigned int bfOffBits; // ImageOffset [Byte]
} bmpFileHeader; /* 14 BYTE */
構造体
typedef struct bmpFileInfoHeader {
unsigned int biSize;
int biWidth; // [Pixel]
int biHeight; // [Pixel]
unsigned short biPlanes; // 1
unsigned short biBitCount; // bits/pixel
unsigned int biCompression;
unsigned int biSizeImage;
int biXPixPerMeter;
int biYPixPerMeter;
unsigned int biCirUsed;
unsigned int biCirImportant;
} bmpFileCoreHeader;
typedef struct bmpFileColorPalette {
char rgbBlue;
char rgbGreen;
char rgbRed;
char rgbReserved;
} bmpFileColorPalette;
typedef struct bmpFile {
bmpFileHeader Header;
bmpFileCoreHeader Info;
bmpFileColorPalette* Palette ;
unsigned char* Image;
unsigned char* ColorImage;
int Width;
int Width4;
int Height;
int numPixel;
int numPixel4;
int BytesPerPixel;
int BitsPerPixel;
int BytesPerImage;
} bmpFile;
typedef struct lbmp2mrcInfo {
mrcImageParaTypeRealCoord Length;
} lbmp2mrcInfo;
API
ビットマップの読み込み
ビットマップfptを読み込み、inへ格納します。
extern void bmpFileRead(bmpFile* in, FILE* fpt, int mode);
ビットマップからの変換
ビットマップinを読み込み、mrcImageファイルoutへ変換します。
extern void lbmp2mrc(mrcImage* out, bmpFile* in, lbmp2mrcInfo linfo, int mode);
ビットマップ情報の出力
ビットマップinの全ての情報をファイルfptへ出力します。
extern void bmpFileInfo(FILE* fpt, bmpFile* in, int mode);
ビットマップの情報(in->Header)をファイルfptへ出力します。
extern void bmpFileFileHeaderInfo(FILE* fpt, bmpFile* in, int mode);
ビットマップの情報(in->Info)をファイルfptへ出力します。
extern void bmpFileInfoHeaderInfo(FILE* fpt, bmpFile* in, int mode);
ビットマップinのパレット情報をファイルfptへ出力します。
extern void bmpFilePaletteInfo(FILE* fpt, bmpFile* in, int mode);