📄 readbmp.h
字号:
//// $Id: readbmp.h,v 1.2 2000/08/29 08:05:33 weiym Exp $//// readbmp.h: Low Level bitmap file read/save routines.//// Copyright (C) 2000, WEI Yongming.//// Author: WEI Yongming.//#ifndef GUI_GDI_READBMP_H #define GUI_GDI_READBMP_H#ifdef __cplusplusextern "C" {#endif /* __cplusplus */int load_bmp (FILE* fp, MYBITMAP *bmp, RGB *pal);int save_bmp (FILE* fp, MYBITMAP* bmp, RGB* pal);#ifdef _LBM_FILE_SUPPORTint load_lbm (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_lbm (FILE* fp, MYBITMAP* bmp, RGB* pal);#endif#ifdef _PCX_FILE_SUPPORTint load_pcx (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_pcx (FILE* fp, MYBITMAP* bmp, RGB* pal);#endif#ifdef _TGA_FILE_SUPPORTint load_tga (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_tga (FILE* fp, MYBITMAP* bmp, RGB* pal);#endif#ifdef _GIF_FILE_SUPPORTint load_gif (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_gif (FILE* fp, MYBITMAP* bmp, RGB* pal);#endif#ifdef _JPG_FILE_SUPPORTint load_jpg (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_jpg (FILE* fp, MYBITMAP* bmp, RGB* pal);#endif#ifdef _PNG_FILE_SUPPORTint load_png (FILE* fp, MYBITMAP* bmp, RGB* pal);int save_png (FILE* fp, MYBITMAP* bmp, RGB* pal);#endifint bmpComputePitch (int bpp, int width, int *pitch, BOOL does_round);void bmpSetBitsInLine (int bpp, BYTE* bits, int pos, BYTE* value);#define fp_getc(f) getc (f)/* fp_igetw: * Reads a 16 bit word from a file, using intel byte ordering. */inline static int fp_igetw (FILE* f){ int b1, b2; if ((b1 = fp_getc(f)) != EOF) if ((b2 = fp_getc(f)) != EOF) return ((b2 << 8) | b1); return EOF;}/* fp_igetl: * Reads a 32 bit long from a file, using intel byte ordering. */inline static long fp_igetl (FILE* f){ int b1, b2, b3, b4; if ((b1 = fp_getc(f)) != EOF) if ((b2 = fp_getc(f)) != EOF) if ((b3 = fp_getc(f)) != EOF) if ((b4 = fp_getc(f)) != EOF) return (((long)b4 << 24) | ((long)b3 << 16) | ((long)b2 << 8) | (long)b1); return EOF;}/* fp_mgetw: * Reads a 16 bit int from a file, using motorola byte-ordering. */inline static int fp_mgetw(FILE *f){ int b1, b2; if ((b1 = fp_getc(f)) != EOF) if ((b2 = fp_getc(f)) != EOF) return ((b1 << 8) | b2); return EOF;}/* fp_mgetl: * Reads a 32 bit long from a file, using motorola byte-ordering. */inline static long fp_mgetl(FILE *f){ int b1, b2, b3, b4; if ((b1 = fp_getc(f)) != EOF) if ((b2 = fp_getc(f)) != EOF) if ((b3 = fp_getc(f)) != EOF) if ((b4 = fp_getc(f)) != EOF) return (((long)b1 << 24) | ((long)b2 << 16) | ((long)b3 << 8) | (long)b4); return EOF;}#ifdef __cplusplus}#endif /* __cplusplus */#endif // GUI_GDI_READBMP_H
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -