c# - 如何用颜色填充图像的一部分?

标签 c# .net vb.net

我有位图图像:

enter image description here

我在该图像上绘制矩形:

    Bitmap myImage = new Bitmap("path");
    using (Graphics gr = Graphics.FromImage(myImage)) 
    {
       Pen pen = new Pen(Color.Black, 2);
       gr.DrawRectangle(pen, 100,100, 100, 200);
    }

enter image description here

我想用黑色填充整个图像,矩形除外。 像这样: enter image description here

知道如何实现吗?

最佳答案

一个简单的 ExcludeClip 就可以:

using (Graphics g = Graphics.FromImage(myImage)) {
  g.ExcludeClip(new Rectangle(100, 100, 100, 200));
  g.Clear(Color.Black);
}

关于c# - 如何用颜色填充图像的一部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23255279/

相关文章:

c# - 已编译的 dll 正则表达式未找到字段异常

c# - 是否可以从另一个方法中断/返回方法执行?

c# - smtp异常发送邮件失败?

c# - 请求 CRM 中实体的最新版本

vb.net - 该表单在构造过程中从默认实例引用自身,这导致无限递归

c# - 哪些图标/图像可以直接使用 .NET Framework 类?

c# - 如何在 Windows/C# 上获取进程名称和顶部窗口的标题

c# - 调用 ToUniversalTime().AddYears().ToLocalTime() 的闰年错误?

vb.net - Visual Studio 中用于选择当前 block 的键盘快捷键

c# - 正则表达式从 HTML 中删除所有跨度,保持内部文本不变