硬汉嵌入式论坛

 找回密码
 立即注册
查看: 822|回复: 4
收起左侧

[TouchGFX] 关于Bmp图片是否能存储Alpha通道参数的疑问

[复制链接]

26

主题

70

回帖

148

积分

初级会员

积分
148
发表于 2022-9-26 11:28:29 | 显示全部楼层 |阅读模式
最常用的Bmp图片一个像素点用4个字节来描述, 其中用3个字节来描述RGB的灰度, 剩余1个字节能否用作Alpha通道的参数存储呢?

常规的Png图片是包含Alpha通道的信息, 在GUI显示上可以制作出透明图化显示和很好的抗锯齿, 但是图片解码对于MCU速度太慢, 用常规BMP图缺少Alpha信息做不到抗锯齿的半透明图片显示.

有没有工具能把Alpha通道信息包含到BMP图片里呢? 或者说Bmp图像素点描述剩余那个字节用来做什么的?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
发表于 2022-9-26 12:19:34 | 显示全部楼层
使用GIMP将ICO透明图标转换为ARGB格式PNG格式,方便BmpCvt使用
https://www.armbbs.cn/forum.php? ... 7115&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

26

主题

70

回帖

148

积分

初级会员

积分
148
 楼主| 发表于 2022-9-27 11:56:01 | 显示全部楼层
eric2013 发表于 2022-9-26 12:19
使用GIMP将ICO透明图标转换为ARGB格式PNG格式,方便BmpCvt使用
https://www.armbbs.cn/forum.php?mod=view ...

这个也只能软件扣图, 不能做半透明化处理, 图片抗锯齿效果不太好.
还是跟PNG那种真正的Alpha通道效果不同了.
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106826
QQ
发表于 2022-9-27 12:35:04 | 显示全部楼层
hjhj7591418 发表于 2022-9-27 11:56
这个也只能软件扣图, 不能做半透明化处理, 图片抗锯齿效果不太好.
还是跟PNG那种真正的Alpha通道效果不 ...

这个不是抠图,就是简单的另存转换,跟PNG透明一模一样。
这个是早期专门研究www.easyicon.net网站提供的大批PNG和ICON图片特供的玩法。

现在就不用这么麻烦了,bmpcvt.exe,直接打开带透明通道的PNG图片另存BMP ARGB即可,简单方便

Windows打开,你看着有锯齿,这个要用专门的小软件打开就看到效果,抗锯齿效果杠杠滴
image.png












回复

使用道具 举报

26

主题

70

回帖

148

积分

初级会员

积分
148
 楼主| 发表于 2022-9-28 11:19:44 | 显示全部楼层
eric2013 发表于 2022-9-27 12:35
这个不是抠图,就是简单的另存转换,跟PNG透明一模一样。
这个是早期专门研究www.easyicon.net网站提供 ...

我下载来测试过了, 其实这里出来的BMP图就是全解码后的每个像素点的图, 跟Gfx生成的图片一样, 这个图片是没有问题的, 肯定能做出透明和半透明效果.

但由于这种位图图片太大, 我又使用PS把bmpcvt转出来的透明BMP图压缩为RLE8的BMP图, 这样256色调色板的BMP图容量小, 类似Gfx的L8_ARGB8888格式.
很不幸, 经过PS压缩为256色BMP图后bmpcvt直接不能打开了, 我用WinHex打开查看图片的调色板, Alpha通道的数据也已经丢失了.

Gfx的L8_ARGB8888格式是我的努力方向. 但是PS好像对透明BMP是不支持的.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-6 07:41 , Processed in 0.254836 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表