您的位置:首页 > 产品设计 > UI/UE

UCGUI学习之路(4)显示位图

2017-10-28 23:23 190 查看
显示位图的步骤跟显示外部字体的方法步骤差不多。

能用于UCGUI的位图通常定义为“C”的GUI_BITMAP结构体变量。在使用此位图的头文件中声明,就可以使用位图打印函数显示了。

这里就要用到位图转换器,把位图转换成“C”格式文件。至于其它格式图片可以通过软件把图片格式转换成位图,再导入位图转换器转换成“C”文件。这里要注意,位图转换器不能从一幅RGB模式的位图转换成“C”文件,必须先把其转换成调色板格式的位图,然后再进行转换成“C”文件。

位图转换器可以导入如下类型的.bmp文件:

带调色板的每像素(bpp)1,4或8位格式。

无调色板的24bpp(RGB/全彩色模式)。

RLE4和RLE8格式。

具体步骤如下:

一、使用位图转换工具把位图转换成“C”语言格式。

运行uC-GUI-BitmapConvert.exe,打开图片file->open.



选择调色板,这里使用自动调色板



File ->Save As 保存为C文件格式。



二、把此位图文件添加到工程中。



三、在使用此位图的头文件中声明,就可以使用位图打印函数显示了。

extern  const GUI_BITMAP bmmeik;


调用图片显示函数GUI_DrawBitmap,

也可以使用BUTTON_SetBitmap设置按钮的图片

四、代码验证。

extern  const GUI_BITMAP bmmeik;

int main()
{
delay_init(168);
uart_init(115200);
//以上代码为了单片机正常运行,不必一样。

//以下代码是验证显示位图的
GUI_Init(); //初始化GUI
GUI_SetBkColor(GUI_BLACK); //设置背景为黑色
GUI_Clear(); //清屏
GUI_DrawBitmap(&bmmeik,2,0);//显示图片
while(1);
}




上图是256颜色的,LCD屏幕是6万色的,所以有些失真。

后来又转化了一幅6万色的,效果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息