getstr88 发表于 2022-6-10 16:34

C# 的Bitmap无法表达一个透明颜色么?

本帖最后由 getstr88 于 2022-6-10 22:02 编辑

我的情况这样的。下层是一张图片,用picturebox显示

在上方我也是一个picturebox,画的是一个边框,有4像素的宽度,中间我想设为透明的,使得因为除了边框之外,都透明。 叠在下面的picturebox的颜色能透出来。从而看上去就是上面一个边框,边框里面透出来下面pic原本的东西

但我发现,我新建一个供上面picturebox用的bitmap,给中间透明的赋值为Color.FromARGB(0,0,0,0)   按理说 alpha设为0,应该透明啊

但结果却是,中间部分并没有透明。而是呈现windows控件默认的console的浅灰色。是picturebox压根就不支持透明是么

杨富贵 发表于 2022-6-10 16:53

不设置颜色 则为透明

getstr88 发表于 2022-6-10 16:59

杨富贵 发表于 2022-6-10 16:53
不设置颜色 则为透明

兄弟,你试试再回答啊。根本不是这样想当然的

ASCII_Cheung 发表于 2022-6-10 18:33

bitmap,可以通过算法,提取像素点,再修改像素点的颜色值。就可以设置透明了。

getstr88 发表于 2022-6-10 21:37

ASCII_Cheung 发表于 2022-6-10 18:33
bitmap,可以通过算法,提取像素点,再修改像素点的颜色值。就可以设置透明了。

??? 兄弟,你有看我的问题么?我就是设置像素为透明的,结果无效

getstr88 发表于 2022-6-10 22:02

结贴了,参考老外的文章,解决了这个问题。原生picbox根本做不到
页: [1]
查看完整版本: C# 的Bitmap无法表达一个透明颜色么?