社区
界面
帖子详情
gdi+怎么处理带有通道的位图
sycnick
2005-04-29 06:38:42
有张位图是ARGB模式,带alpha通道,怎么画出来,能将图片的alpha值表现出来(该图片有些部位透明(alpha值0))。
高手帮忙。。。。
如果解决了,连
http://community.csdn.net/Expert/topic/3975/3975289.xml?temp=.3284265
的分数一起给。
...全文
124
4
打赏
收藏
gdi+怎么处理带有通道的位图
有张位图是ARGB模式,带alpha通道,怎么画出来,能将图片的alpha值表现出来(该图片有些部位透明(alpha值0))。 高手帮忙。。。。 如果解决了,连 http://community.csdn.net/Expert/topic/3975/3975289.xml?temp=.3284265 的分数一起给。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xmm1984
2005-06-20
打赏
举报
回复
我顶
sycnick
2005-05-03
打赏
举报
回复
up
sycnick
2005-04-30
打赏
举报
回复
来帮忙,谢谢
sycnick
2005-04-30
打赏
举报
回复
来帮忙,谢谢
图形有关的汇编源代码,例如:混合
位图
块,从
位图
获取DC等
图形有关的源代码,包括:
带有
Alpha
通道
的预多
位图
,将 TTF 字体打包和解包到程序中以供 GDI 使用,快速 Alpha 混合 (MMX),混合
位图
块,从
位图
获取DC,创建要绘画的DC,重采样等
modTC_Icon:让VB6支持[32位/24位]真彩色图标
VB6本身只支持16色(4位)和256色(8位)的图标,这种图标只是早期的Windows版本所采用的 图标格式标准。现在各种高清真彩色(32位带Alpha
通道
、24位不带Alpha
通道
)早已经很流行 并且普遍使用了,但在VB6中却不能直接支持、使用。即使想把这种真彩色图标加入图标资源、 或者是把它加入ImageList控件中,也会被提示“无效图片”而不能加入。记得论坛中曾经有某 位高人说过,VB6的Form是支持真彩色图标的,可以给窗体设置真彩色图标。 昨天上午我试了一下,新建一个标准EXE工程,然后随意找了一个高清真彩图标文件,给工 程的Form1设置Icon属性,成功了……… 但是,感觉它显示的图标有点怪异,总觉得有些不对 劲呢…… 于是,我把这个高清图标文件中32×32和16×16这两种规格的真彩色图标单独提取 出来,分别保存为一个.ico格式的文件,然后再用这两个图标文件来给它设置Icon属性。果然, 这两个文件在操作时VB6都提示“无效图片”!!!这就说明:VB6是不支持真彩色图标的。最 开始时“能设置成功”,只不过是因为它从图标组中找到了256色的、它能支持的格式罢了。 闲话不多说了,这个模块进行了简单的封装,提供了一些基础的操作功能。源码中有比较 详细的注释,使用起来应该是很简单的,就不再写什么“应用示例代码”了。首先要调用接口 函数装载图标,从图标文件加载就调用LoadFromFile(),从字节数组加载就调用LoadData()。 加载成功后,即可调用其它接口来使用图标对象了,比如用GDI方式把图标画到窗口内、或者画 到某个PictureBox上、给自己的窗口或别的程序窗口设置一个真彩色图标等。虽然在“资源” 中不能以“图标”的方式把真彩图标加入,但是,却可以按“自定义资源”的方式把图标文件 装入,使用时读取出对应的资源数据,然后调用函数LoadFromData()进行加载。加载成功就可 以使用里面的真彩色图标了。 这个模块只提供了一些基本的功能,如果有需要可以自己再进行扩展。还有就是没有进行 异常
处理
,因此要求用来加载的文件必须是正确的图标文件、并且可以读取;数组数据则必须 是合法的图标文件数据。否则可能会引起异常,你也可以修改代码进行异常捕获
处理
。
3天掌握Windows
GDI+
图形编程
GDI+
(Graphics Device Interface plus)是以前版本GDI的继承者,出于兼容性考虑,Windows XP仍然支持以前版本的GDI,但是在开发新应用程序的时候,开发人员为了满足图形输出需要应该使用
GDI+
,因为
GDI+
对以前的...
酷炫界面引擎(KXUI) - 全新框架逻辑[ DUI DirectUI 自绘 皮肤]-易语言
酷炫界面引擎(KXUI) 前言: 白天去公司上班,晚上回家一有时间就打开电脑写DirectUI,在不自不觉中已经写了N个版本的DirectUI. 框架逻辑是DirectUI最核心的部分,它完全影响UI的效率和效果等... 这次发的DirectUI框架逻辑和以往的有大大的改进,个人感觉已经接近其它"真实DirectUI"了. 我一步一步按思路和经验重写了这个DirectUI,但写完后发出它的执行效率和占用资源并未达到我要求. 所以我决定放弃这个DirectUI,也许我太追求完美了(我还会继续重写DirectUI,我想肯定更加好).... 现在开源给大家:学习.参考.交流.改进.二开等等.. 引用参考:
GDI+
- GDIPlus(kyozy) 类中调用 - 东灿屠版_易语言类方法回调 在此备注特别感谢你们为易友做出个贡献.... 结构关系: 框架逻辑: 1.碰撞元素: 循环判断在目标元素上层有没有矩形碰撞并且可视的元素 2.隐藏上层: 把碰撞可视的元素隐藏了(就是只画出背景
位图
,参考绘画元素) 这样就把目标元素上层需要画的元素隐藏了 3.计算显示: 计算目标元素在父级元素的位置和所显示的矩形 也可是在窗口的实际坐标和与父级元素矩形交集的矩形区域(超出父级元素矩形是不显示的) 4.背景
位图
每个元素在绘画前把该元素所占的矩形区域图片备份(复制)保存“背景
位图
”。 这是为了实现元素的隐藏或移动等等,且绘画时不影响该元素下层的元素(带透明
通道
)。 5.绘画元素: 画出目标元素的背景
位图
,画出实际显示部分的元素 循环判断该目标下是否有子元素,如果有也“绘画元素” 6.显示上层: 把刚刚隐藏上层元素显示出来,并更新“背景
位图
”和画出上层元素 效果演示: 部分命令: 作者:东子 Email/QQ: xhwsd@qq.com 网站: http://www.XunChi.tk 热烈欢迎与我交流有关DirectUI有关"技术"..... 请在二开.参考.修改,备注一下基于东子的酷炫界面引擎(KXUI) .... 如发现BUG,那是正常情况,别问我怎么解决,自己打开源码解决...
使用
GDI+
保存带Alpha
通道
的图像
带Alpha
通道
的图像(ARBG)在通过GDIPlus::Bitmap::FromHBITMAP等转为
GDI+
位图
,再存储时,透明区域会变成纯黑(也有可能是纯白?)。 网上找了两段保持透明的实现代码,列在下边,经测试,第一段无效,第二段有效,这两段代码正好可以对比说明:FromHBITMAP在拷贝图像数据时,原图中的Alpha数据确实没有Copy过来,而并非是未设置图像属性的问题。 ...
界面
15,979
社区成员
115,897
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章