使用 .Net GDI 擦除像素+

发布于 2024-09-10 04:07:08 字数 133 浏览 2 评论 0原文

如何使用 .Net GDI+ 或 API 调用将像素的 Alpha 通道设置为零? 如何将形状区域设置为透明(例如,具有某种“擦除”画笔并将其与 FillEllipse() 或 FillRectangle() 方法一起使用)?

谢谢。

How can I set the alpha channel of a pixel to zero using .Net GDI+ or API calls?
How can I set to transparent a shaped area (for instance, having sort of an"Erasing" brush and using it with FillEllipse() or FillRectangle() methods) ?

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

豆芽 2024-09-17 04:07:08

您可以使用由 alpha 为 0 的颜色 (Color.FromArgb) 制成的画笔。由于 RGB 值不再重要,您不妨使用 Brushes.Transparent。通过使用 Graphics.FillRectangle() 绘制 1x1 的矩形,使单个像素透明。

Bitmap.MakeTransparent() 是快速使任意背景颜色透明的另一种方法。

You can use a brush that's made from a Color that has an alpha of 0 (Color.FromArgb). Since the RGB values don't really matter anymore, you might as well use Brushes.Transparent. Make a single pixel transparent by drawing a rectangle of 1x1 with Graphics.FillRectangle().

Bitmap.MakeTransparent() is another way to quickly make an arbitrary background color transparent.

权谋诡计 2024-09-17 04:07:08

这很容易。将 Graphics 对象的 CompostingMode 设置为 SourceCopy,并使用 Fill 函数和由完全透明的颜色(alpha 分量为 0)创建的 Brush。

Its pretty easy. Set the CompostingMode of the Graphics object to SourceCopy and use the Fill functions with a Brush created from a color with complete transparency(alpha component being 0).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文