社区
Windows客户端开发
帖子详情
如何实现PNG 在mobile 6.0上透明呢?
ChamPagneZ
2009-06-23 09:38:24
加精
找好了好长时间,不得其法.
gdiplus在pc很好,移到mobile上没有效果.
有哪位兄弟做过,高分伺候.
是C++.
网络上太多C#的实现,自己看不太明白,如果哪位知道从C#转到C++,也麻烦告知一二
...全文
1249
36
打赏
收藏
如何实现PNG 在mobile 6.0上透明呢?
找好了好长时间,不得其法. gdiplus在pc很好,移到mobile上没有效果. 有哪位兄弟做过,高分伺候. 是C++. 网络上太多C#的实现,自己看不太明白,如果哪位知道从C#转到C++,也麻烦告知一二
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
36 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mir5465
2011-04-20
打赏
举报
回复
[Quote=引用 11 楼 cytlyy 的回复:]
参考:
hBitmap=LoadBitmap(g_hInst,MAKEINTRESOURCE (IDB_BITMAP6));//这里可以用其他方法加载其他格式的图片,如SHLoadImageFile
hdcMem = CreateCompatibleDC(hDC);
SelectObject(hdcMem,hBitmap);
bf.BlendOp = AC_SRC_OVE……
[/Quote]
这个方法载入的图片,如果有圆角,圆角区域用其他颜色标志,这样显示出来的图片忽略色是无法去掉的,尝试过,透明是可以实现的,但是碰到上述情况是无法解决!!!
ChamPagneZ
2009-06-25
打赏
举报
回复
我说怎么结贴了还有人在回,上主页了,丢人啊。
那个谁,搞C#的,撤下来吧,感觉这没有什么讨论价值。
ul120851
2009-06-25
打赏
举报
回复
SDFSDFSDFSDFASFDASDF
ul120851
2009-06-25
打赏
举报
回复
SDFFFFFFFFFFFFFFFFFFFFFF
yylang1987
2009-06-25
打赏
举报
回复
不知道, 竟然还有这种问题...
beautiful200
2009-06-25
打赏
举报
回复
回答的都不错,学到了
datouguai
2009-06-25
打赏
举报
回复
恩 挺好的 这样错了
hfrll
2009-06-25
打赏
举报
回复
加油!!
chaowendai
2009-06-25
打赏
举报
回复
楼上乱码了?赫赫
boxcc123
2009-06-25
打赏
举报
回复
这个也可以?
ChamPagneZ
2009-06-24
打赏
举报
回复
结贴了
用COM实现了,太慢,没意义.
jspboy2008
2009-06-24
打赏
举报
回复
我顶
QQ_456
2009-06-24
打赏
举报
回复
up
lb198768
2009-06-24
打赏
举报
回复
很不错啊
oh_my_god
2009-06-24
打赏
举报
回复
LoadBitMap是无法实现透明的,你只能用com来做
IImagingFactory
IImage
通过com的方式加载png,draw.这个我在mobile6下是没问题的
li_guotao
2009-06-24
打赏
举报
回复
[Quote=引用 11 楼 cytlyy 的回复:]
参考:
hBitmap=LoadBitmap(g_hInst,MAKEINTRESOURCE (IDB_BITMAP6));//这里可以用其他方法加载其他格式的图片,如SHLoadImageFile
hdcMem = CreateCompatibleDC(hDC);
SelectObject(hdcMem,hBitmap);
bf.BlendOp = AC_SRC_OVER;
bf.BlendFlags = 0 ;
bf.SourceConstantAlpha = 170;
bf.AlphaFormat = 0;
AlphaBlend(hDC, x, y, width, height, h…
[/Quote]
同意此楼的做法,不过最好将Loadbitmap修改成
IImagingFactory* pImageFactory = NULL;
IImage* pImage = NULL;
方法来处理会更好。
大饼哥-
2009-06-23
打赏
举报
回复
wm5.0sdk以后的话,就用AlphaBlend可以实现透明。
或者,你直接加载一个透明图片也可以的。
IMAGEINGFACTORY这个应该更方便吧,不过这个我没有用,上面2个方法我都试过,可以的。
LZ可以写测试程序试试。。。。
ChamPagneZ
2009-06-23
打赏
举报
回复
button控件不能成功的原因,我觉得是背景窗口根本不会去画属于button窗口的区域,这让问题回到原点,必须得到button的区域的位图!!
除非不用button,这个是项目里面的东西,改动会很大,可行性不高啊
beyondma
2009-06-23
打赏
举报
回复
IMAGE和IMAGEFACTORY是正解。
cytlyy
2009-06-23
打赏
举报
回复
[Quote=引用 12 楼 ChamPagneZ 的回复:]
引用 11 楼 cytlyy 的回复:
参考:
hBitmap=LoadBitmap(g_hInst,MAKEINTRESOURCE (IDB_BITMAP6));//这里可以用其他方法加载其他格式的图片,如SHLoadImageFile
hdcMem = CreateCompatibleDC(hDC);
SelectObject(hdcMem,hBitmap);
bf.BlendOp = AC_SRC_OVER;
bf.BlendFlags = 0 ;
bf.SourceConstantAlpha = 170;
bf.AlphaFormat = 0;
AlphaBlend(hDC, x, y, width, height, hdcMem , 0, 0, width, height, bf); …
[/Quote]
button的 drawitem的效果应该是同理的,也是颜色的叠加效果。如果你想实现好的效果,最好不用button控件,而直接用ico,或者png图标来代替直接画,这样效果会好很多。也可以符合你的要求。
加载更多回复(15)
“基于Windows
Mobile
6.0
的GPS开发”的文献综述
这篇文献综述探讨了在Windows
Mobile
6.0
平台上开发GPS应用的挑战和解决方案,尤其是在网络盲区环境下。 【GPS系统概述】 全球定位系统(GPS)由三部分构成:空间星座、地面监控系统和用户接收设备。空间星座由24...
wm
6.0
中的一些图标素材
Windows
Mobile
6.0
是微软针对智能手机和平板电脑推出的操作系统,它在界面上强调简洁和直观,图标作为重要的视觉元素,需要具有清晰的辨识度和良好的视觉效果。这些图标素材可能包括各种功能按钮、菜单项、状态图标...
C#写的.net compact smartphone
6.0
tabcontrol控件有图片会闪动
4. 优化图片资源:减小图片大小,降低图片质量,或者使用适当的格式(如
PNG
,支持
透明
度),可以减少渲染时的计算量,从而减轻闪烁现象。 5. 更新.NET Compact Framework版本:如果条件允许,升级到更高版本的.NET ...
wince和win
mobile
系统的 pc端截图工具
在移动设备操作系统领域,Windows CE(Wince)和Windows
Mobile
曾是广泛应用的选择,它们为开发者提供了丰富的功能和便利的开发环境。针对这些系统,开发一款PC端的截图工具显得尤为重要,尤其对于远程调试和用户...
Neodynamic_Barcode_Professional_
6.0
.2018.508.rar
使用Neodynamic Barcode,您将能够在Windows客户端、Web和RIA、SQL Server Reporting Services和
Mobile
上生成自己的条形码。 它易于使用和使用,您只需几分钟就可以生成自己的条形码。 Neodynamic Barcode还能够...
Windows客户端开发
7,660
社区成员
18,840
社区内容
发帖
与我相关
我的任务
Windows客户端开发
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
复制链接
扫一扫
分享
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章