📄 rgb2rgb.c
字号:
ROW2X_FUNC(RGB555,RGB32 ,STRETCH2X)
ROW2X_FUNC(RGB555,RGB32 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB555,BGR32 ,SHRINK)
ROW2X_FUNC(RGB555,BGR32 ,COPY)
ROW2X_FUNC(RGB555,BGR32 ,STRETCH)
ROW2X_FUNC(RGB555,BGR32 ,STRETCH2X)
ROW2X_FUNC(RGB555,BGR32 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB555,RGB24 ,SHRINK)
ROW2X_FUNC(RGB555,RGB24 ,COPY)
ROW2X_FUNC(RGB555,RGB24 ,STRETCH)
ROW2X_FUNC(RGB555,RGB24 ,STRETCH2X)
ROW2X_FUNC(RGB555,RGB24 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB555,RGB565,SHRINK)
ROW2X_FUNC(RGB555,RGB565,COPY)
ROW2X_FUNC(RGB555,RGB565,STRETCH)
ROW2X_FUNC(RGB555,RGB565,STRETCH2X)
ROW2X_FUNC(RGB555,RGB565,STRETCH2XPLUS)
ROW2X_FUNC(RGB555,RGB555,SHRINK)
ROW2X_FUNC(RGB555,RGB555,COPY)
ROW2X_FUNC(RGB555,RGB555,STRETCH)
ROW2X_FUNC(RGB555,RGB555,STRETCH2X)
ROW2X_FUNC(RGB555,RGB555,STRETCH2XPLUS)
ROW2X_FUNC(RGB555,RGB8 ,SHRINK)
ROW2X_FUNC(RGB555,RGB8 ,COPY)
ROW2X_FUNC(RGB555,RGB8 ,STRETCH)
ROW2X_FUNC(RGB555,RGB8 ,STRETCH2X)
ROW2X_FUNC(RGB555,RGB8 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,RGB32 ,SHRINK)
ROW2X_FUNC(RGB8 ,RGB32 ,COPY)
ROW2X_FUNC(RGB8 ,RGB32 ,STRETCH)
ROW2X_FUNC(RGB8 ,RGB32 ,STRETCH2X)
ROW2X_FUNC(RGB8 ,RGB32 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,BGR32 ,SHRINK)
ROW2X_FUNC(RGB8 ,BGR32 ,COPY)
ROW2X_FUNC(RGB8 ,BGR32 ,STRETCH)
ROW2X_FUNC(RGB8 ,BGR32 ,STRETCH2X)
ROW2X_FUNC(RGB8 ,BGR32 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,RGB24 ,SHRINK)
ROW2X_FUNC(RGB8 ,RGB24 ,COPY)
ROW2X_FUNC(RGB8 ,RGB24 ,STRETCH)
ROW2X_FUNC(RGB8 ,RGB24 ,STRETCH2X)
ROW2X_FUNC(RGB8 ,RGB24 ,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,RGB565,SHRINK)
ROW2X_FUNC(RGB8 ,RGB565,COPY)
ROW2X_FUNC(RGB8 ,RGB565,STRETCH)
ROW2X_FUNC(RGB8 ,RGB565,STRETCH2X)
ROW2X_FUNC(RGB8 ,RGB565,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,RGB555,SHRINK)
ROW2X_FUNC(RGB8 ,RGB555,COPY)
ROW2X_FUNC(RGB8 ,RGB555,STRETCH)
ROW2X_FUNC(RGB8 ,RGB555,STRETCH2X)
ROW2X_FUNC(RGB8 ,RGB555,STRETCH2XPLUS)
ROW2X_FUNC(RGB8 ,RGB8 ,SHRINK)
ROW2X_FUNC(RGB8 ,RGB8 ,COPY)
ROW2X_FUNC(RGB8 ,RGB8 ,STRETCH)
ROW2X_FUNC(RGB8 ,RGB8 ,STRETCH2X)
ROW2X_FUNC(RGB8 ,RGB8 ,STRETCH2XPLUS)
/*
* Row scale function selection tables:
* [destination format][source format][row scale type]
*/
void (* RowFuncs [RGB_FORMATS][RGB_FORMATS][SCALE_FUNCS]) (
unsigned char *dest_ptr, int dest_dx, unsigned char *src_ptr, int src_dx) =
{
{ {
ROW_FN(RGB32 ,RGB32 ,SHRINK),
ROW_FN(RGB32 ,RGB32 ,COPY),
ROW_FN(RGB32 ,RGB32 ,STRETCH),
ROW_FN(RGB32 ,RGB32 ,STRETCH2X),
ROW_FN(RGB32 ,RGB32 ,STRETCH2XPLUS)
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB32 ,BGR32 ,SHRINK),
ROW_FN(RGB32 ,BGR32 ,COPY),
ROW_FN(RGB32 ,BGR32 ,STRETCH),
ROW_FN(RGB32 ,BGR32 ,STRETCH2X),
ROW_FN(RGB32 ,BGR32 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB32 ,RGB24 ,SHRINK),
ROW_FN(RGB32 ,RGB24 ,COPY),
ROW_FN(RGB32 ,RGB24 ,STRETCH),
ROW_FN(RGB32 ,RGB24 ,STRETCH2X),
ROW_FN(RGB32 ,RGB24 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB32 ,RGB565,SHRINK),
ROW_FN(RGB32 ,RGB565,COPY),
ROW_FN(RGB32 ,RGB565,STRETCH),
ROW_FN(RGB32 ,RGB565,STRETCH2X),
ROW_FN(RGB32 ,RGB565,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB32 ,RGB555,SHRINK),
ROW_FN(RGB32 ,RGB555,COPY),
ROW_FN(RGB32 ,RGB555,STRETCH),
ROW_FN(RGB32 ,RGB555,STRETCH2X),
ROW_FN(RGB32 ,RGB555,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{ /* rgb444 stub */
0,
0,
0,
0,
0
},{
#ifdef _8_BIT_SUPPORT
ROW_FN(RGB32 ,RGB8 ,SHRINK),
ROW_FN(RGB32 ,RGB8 ,COPY),
ROW_FN(RGB32 ,RGB8 ,STRETCH),
ROW_FN(RGB32 ,RGB8 ,STRETCH2X),
ROW_FN(RGB32 ,RGB8 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
}
},{ {
ROW_FN(BGR32 ,RGB32 ,SHRINK),
ROW_FN(BGR32 ,RGB32 ,COPY),
ROW_FN(BGR32 ,RGB32 ,STRETCH),
ROW_FN(BGR32 ,RGB32 ,STRETCH2X),
ROW_FN(BGR32 ,RGB32 ,STRETCH2XPLUS)
},{
#ifdef _FAT_HXCOLOR
ROW_FN(BGR32 ,BGR32 ,SHRINK),
ROW_FN(BGR32 ,BGR32 ,COPY),
ROW_FN(BGR32 ,BGR32 ,STRETCH),
ROW_FN(BGR32 ,BGR32 ,STRETCH2X),
ROW_FN(BGR32 ,BGR32 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(BGR32 ,RGB24 ,SHRINK),
ROW_FN(BGR32 ,RGB24 ,COPY),
ROW_FN(BGR32 ,RGB24 ,STRETCH),
ROW_FN(BGR32 ,RGB24 ,STRETCH2X),
ROW_FN(BGR32 ,RGB24 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(BGR32 ,RGB565,SHRINK),
ROW_FN(BGR32 ,RGB565,COPY),
ROW_FN(BGR32 ,RGB565,STRETCH),
ROW_FN(BGR32 ,RGB565,STRETCH2X),
ROW_FN(BGR32 ,RGB565,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(BGR32 ,RGB555,SHRINK),
ROW_FN(BGR32 ,RGB555,COPY),
ROW_FN(BGR32 ,RGB555,STRETCH),
ROW_FN(BGR32 ,RGB555,STRETCH2X),
ROW_FN(BGR32 ,RGB555,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{ /* rgb444 stub */
0,
0,
0,
0,
0
},{
#ifdef _8_BIT_SUPPORT
ROW_FN(BGR32 ,RGB8 ,SHRINK),
ROW_FN(BGR32 ,RGB8 ,COPY),
ROW_FN(BGR32 ,RGB8 ,STRETCH),
ROW_FN(BGR32 ,RGB8 ,STRETCH2X),
ROW_FN(BGR32 ,RGB8 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
}
},{ {
ROW_FN(RGB24 ,RGB32 ,SHRINK),
ROW_FN(RGB24 ,RGB32 ,COPY),
ROW_FN(RGB24 ,RGB32 ,STRETCH),
ROW_FN(RGB24 ,RGB32 ,STRETCH2X),
ROW_FN(RGB24 ,RGB32 ,STRETCH2XPLUS)
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB24 ,BGR32 ,SHRINK),
ROW_FN(RGB24 ,BGR32 ,COPY),
ROW_FN(RGB24 ,BGR32 ,STRETCH),
ROW_FN(RGB24 ,BGR32 ,STRETCH2X),
ROW_FN(RGB24 ,BGR32 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB24 ,RGB24 ,SHRINK),
ROW_FN(RGB24 ,RGB24 ,COPY),
ROW_FN(RGB24 ,RGB24 ,STRETCH),
ROW_FN(RGB24 ,RGB24 ,STRETCH2X),
ROW_FN(RGB24 ,RGB24 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB24 ,RGB565,SHRINK),
ROW_FN(RGB24 ,RGB565,COPY),
ROW_FN(RGB24 ,RGB565,STRETCH),
ROW_FN(RGB24 ,RGB565,STRETCH2X),
ROW_FN(RGB24 ,RGB565,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB24 ,RGB555,SHRINK),
ROW_FN(RGB24 ,RGB555,COPY),
ROW_FN(RGB24 ,RGB555,STRETCH),
ROW_FN(RGB24 ,RGB555,STRETCH2X),
ROW_FN(RGB24 ,RGB555,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{ /* rgb444 stub */
0,
0,
0,
0,
0
},{
#ifdef _8_BIT_SUPPORT
ROW_FN(RGB24 ,RGB8 ,SHRINK),
ROW_FN(RGB24 ,RGB8 ,COPY),
ROW_FN(RGB24 ,RGB8 ,STRETCH),
ROW_FN(RGB24 ,RGB8 ,STRETCH2X),
ROW_FN(RGB24 ,RGB8 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
}
},{ {
ROW_FN(RGB565,RGB32 ,SHRINK),
ROW_FN(RGB565,RGB32 ,COPY),
ROW_FN(RGB565,RGB32 ,STRETCH),
ROW_FN(RGB565,RGB32 ,STRETCH2X),
ROW_FN(RGB565,RGB32 ,STRETCH2XPLUS)
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB565,BGR32 ,SHRINK),
ROW_FN(RGB565,BGR32 ,COPY),
ROW_FN(RGB565,BGR32 ,STRETCH),
ROW_FN(RGB565,BGR32 ,STRETCH2X),
ROW_FN(RGB565,BGR32 ,STRETCH2XPLUS)
#else
0,
0,
0,
0,
0
#endif
},{
#ifdef _FAT_HXCOLOR
ROW_FN(RGB565,RGB24 ,SHRINK),
ROW_FN(RGB565,RGB24 ,COPY),
ROW_FN(RGB565,RGB24 ,STRETCH),
ROW_FN(RGB565,RGB24 ,STRETCH2X),
ROW_FN(RGB565,RGB24 ,STRETCH2XPLUS)
#else
0,
0,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -