现在的位置: 首页 > 综合 > 正文

RGB图像格式转换

2017年09月10日 ⁄ 综合 ⁄ 共 1310字 ⁄ 字号 评论关闭

#define RGB555_565(rgb) ((WORD)(((((WORD)(rgb))&0x7C00)<<1) | \
((((WORD)(rgb))&0x03E0)<<1) | \
((((WORD)(rgb))&0x001F)) \
))

#define RGB565_555(rgb) ((WORD)(((((WORD)(rgb))&0xF800)>>1) | \
((((WORD)(rgb))&0x07C0)>>1) | \
((((WORD)(rgb))&0x001F)) \
))

#define RGB888_555(rgb) ((WORD)(((((DWORD)(rgb))&0x000000F8)<<7) | \
((((DWORD)(rgb))&0x0000F800)>>6) | \
((((DWORD)(rgb))&0x00F80000)>>19) \
))

#define RGB888_565(rgb) ((WORD)(((((DWORD)(rgb))&0x000000F8)<<8) | \
((((DWORD)(rgb))&0x0000FC00)>>5) | \
((((DWORD)(rgb))&0x00F80000)>>19) \
))

#define RGB555_888(rgb) ((DWORD)(((((WORD)(rgb))&0x001F)<<16) | \
((((WORD)(rgb))&0x03E0)<<6) | \
((((WORD)(rgb))&0x7C00)>>7) \
))

#define RGB565_888(rgb) ((DWORD)(((((WORD)(rgb))&0x001F)<<16) | \
((((WORD)(rgb))&0x07E0)<<5) | \
((((WORD)(rgb))&0xF800)>>8) \
))

#define RGB555(b,g,r) ((WORD)((((BYTE)(r)>>3)|((WORD)(((BYTE)(g)>>3))<<5))|(((WORD)((BYTE)(b>>3)))<<10)))

#define RGB565(b,g,r) ((WORD)((((BYTE)(r)>>3)|((WORD)(((BYTE)(g)>>2))<<5))|(((WORD)((BYTE)(b>>3)))<<11)))

#define GET555BValue(rgb) ((BYTE) (((((WORD)(rgb))&0x7C00))>>7) )

#define GET555GValue(rgb) ((BYTE) (((((WORD)(rgb))&0x03E0))>>2) )

#define GET555RValue(rgb) ((BYTE) (((((WORD)(rgb))&0x001F))<<3) )

#define GET565BValue(rgb) ((BYTE) (((((WORD)(rgb))&0xF800))>>8) )

#define GET565GValue(rgb) ((BYTE) (((((WORD)(rgb))&0x07E0))>>3) )

#define GET565RValue(rgb) ((BYTE) (((((WORD)(rgb))&0x001F))<<3) )

抱歉!评论已关闭.