|
|
1
6
当与gdi(和win32)进行互操作时,gdi+有许多与alpha混合相关的问题。在这种情况下,对bmp.gethbitmap()的调用将使图像与黑色背景混合。安 article on CodeProject 给出了有关该问题的更多详细信息,以及用于将图像添加到图像列表的解决方案。 您应该能够使用类似的代码来让hbitmap用于遮罩:
|
|
|
2
3
不久前,我读到这个问题是因为位图中需要预乘alpha通道。我不确定这是否是Windows光标或GDI的问题,在我的一生中,我找不到与此相关的文档。因此,虽然这个解释可能正确,也可能不正确,但是下面的代码确实按照您的需要,在光标位图中使用一个预乘的alpha通道。
PInvoke声明位于外部类中,如下所示:
关于代码的一些注释:
|
|
|
3
0
尝试将蓝色的值降低到0.7或0.6,看看这是否更接近你想要的。 这是一个很好的网站,可以解释 ColorMatrix : |
|
|
4
0
当我运行代码以使用背景网格图像修改PictureBox中的图像时,我可以在不更改代码的情况下获得所需的效果。也许你的图像正被绘制在某个深色物体的顶部… |
|
|
5
0
如果我的建议过于简单(我对C还是个新手),请原谅我,但我在msdn网站上找到了这个,也许 this 可能会把你指向正确的方向? /马特 |
|
|
F.Fipoo · 如何将屏幕截图写入PNG? 8 年前 |
|
|
DonBoitnott · 将图标转换为Png 9 年前 |
|
|
techno · 调整图像大小保持纵横比白线边框 9 年前 |
|
|
Ian Boyd · 如何将GDI+位图放置到剪贴板上? 10 年前 |
|
|
wenz · 查找点是否位于DrawBezier函数创建的Bezier线上 10 年前 |
|
|
Vadims Samsinovs · 重绘图像的最有效方法 12 年前 |
|
|
DanyR · 如何在gdi中正确绘制地图坐标+ 12 年前 |