fcn 发表于 2024-1-29 17:16:24

emWin 显示外部flash的32位带透明图层的bmp图片,无法显示透明

如题,需要显示存在外部flash上的32位带透明图层的bmp图片,使用GUI_BMP_DrawEx函数,修改了GetData【int GUI_GET_DATA_FUNC(void * p, const U8 ** ppData, unsigned NumBytes, U32 Off);】函数,实际显示效果没有带上透明图层,请各位大佬指点一下

eric2013 发表于 2024-1-29 17:56:13

将这个BMP图片转换成C数组,调用GUI_BMP_Draw看看正常不,如果正常说明是接口实现有点问题。

fcn 发表于 2024-1-29 18:30:48

eric2013 发表于 2024-1-29 17:56
将这个BMP图片转换成C数组,调用GUI_BMP_Draw看看正常不,如果正常说明是接口实现有点问题。

用Bin2C转换成.c数组,用GUI_BMP_Draw,透明图层也是未显示出来。
用BmpCvt转出来的.c结构体,用GUI_DrawBitmap是正常显示。

eric2013 发表于 2024-1-30 07:05:02

fcn 发表于 2024-1-29 18:30
用Bin2C转换成.c数组,用GUI_BMP_Draw,透明图层也是未显示出来。
用BmpCvt转出来的.c结构体,用GUI_Dra ...

先调用函数GUI_BMP_EnableAlpha()使能,然后再调用GUI_BMP_Draw

fcn 发表于 2024-1-30 09:11:15

eric2013 发表于 2024-1-30 07:05
先调用函数GUI_BMP_EnableAlpha()使能,然后再调用GUI_BMP_Draw

感谢,可以了
页: [1]
查看完整版本: emWin 显示外部flash的32位带透明图层的bmp图片,无法显示透明