[stm32] 利用uC-BmpCvt软件生成uc-gui可调用的bmp图片
>_<:学习贴图[bmp图]:首先找一张bmp格式的图片,然后下载uC-BmpCvt软件,打开改图片
>_<:然后点击Image-Conver-Into-Best Palatte调成最佳调色板,然后save格式为默认格式:
>_<:结果生成了一个kk.c文件:
- 这里Colorskk[]是16个颜色;
- Palkk是根据上面的16个颜色构建对应的调色板;
- ackk[]为Bmp图的内容;
- bmkk为根据上面的调色板,bmp内容建立uc-gui的函数可以调用的图片格式,在Fun函数里用函数GUI_DrawBitmap(&bmkk,0,0);就能把这幅图贴在(0,0)位置啦!
1 #include "stdlib.h" 2 3 #include "GUI.H" 4 5 /* Palette 6 The following are the entries of the palette table. 7 Every entry is a 32-bit value (of which 24 bits are actually used) 8 the lower 8 bits represent the Red component, 9 the middle 8 bits represent the Green component, 10 the highest 8 bits (of the 24 bits used) represent the Blue component 11 as follows: 0xBBGGRR 12 */ 13 14 const GUI_COLOR Colorskk[] = { 15 0xFFFFFF,0x000000,0xC0C0C0,0x808080 16 ,0x00FFFF,0xFF0000,0x008080,0x800000 17 ,0x0000FF,0x000080,0xFFFF00,0x808000 18 ,0x008000,0x800080,0xFF00FF,0x00FF00 19 }; 20 21 const GUI_LOGPALETTE Palkk = { 22 16, /* number of entries */ 23 0, /* No transparency */ 24 &Colorskk[0] 25 }; 26 27 const unsigned char ackk[] = {...}; 28 const GUI_BITMAP bmkk = { 29 798, /* XSize */ 30 480, /* YSize */ 31 399, /* BytesPerLine */ 32 4, /* BitsPerPixel */ 33 ackk, /* Pointer to picture data (indices) */ 34 &Palkk /* Pointer to palette */ 35 };