gpt4 book ai didi

c# - 如何使用 'transparent white' 绘制位图区域?

转载 作者:太空狗 更新时间:2023-10-29 17:34:39 24 4
gpt4 key购买 nike

我想用“透明白色”替换位图矩形区域中的所有像素 - 即 a=0、b=255、r=255、g=255。

FillRectangle 不会这样做 - 给定透明画笔,现有像素不变。

我是否需要为矩形中的每个像素单独使用 SetPixel?

最佳答案

您必须设置 Graphics.CompositingMode 属性。例如:

protected override void OnPaint(PaintEventArgs e) {
var img = Properties.Resources.Chrysanthemum;
e.Graphics.DrawImage(img, 0, 0);
e.Graphics.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;
using (var br = new SolidBrush(Color.FromArgb(0, 255, 255, 255))) {
e.Graphics.FillRectangle(br, new Rectangle(50, 50, 100, 100));
}
}

您使用的实际颜色并不重要,您将得到一个 alpha 为 0 的黑色矩形。

关于c# - 如何使用 'transparent white' 绘制位图区域?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2883062/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com