C# 填充不规则图片的问题

mcdjxiao 2010-04-27 05:21:50
现在我将一个图片的轮廓画了出来 我需要将 轮廓里的内容添加成 白色 或者其他色 怎么做
下面是代码 不过好像不对只是画出了轮廓 没有填充死 等高手
GraphicsPath GP = new GraphicsPath();
SolidBrush mySolidBrush = new SolidBrush(Color.GreenYellow);
Color C = Color.FromArgb(0, 0, 0, 0);
// Point[] poins = new Point[]
for (int z = 0; z < result.Width; z++)
for (int w = 0; w < result.Height; w++)
//// 这
if (result.GetPixel(z, w) != C
&& (z > 0 && result.GetPixel(z - 1, w) == C
|| z < result.Width - 1 && result.GetPixel(z + 1, w) == C
|| w > 0 && result.GetPixel(z, w - 1) == C
|| w < result.Height - 1 && result.GetPixel(z, w + 1) == C))

GP.AddRectangle(new Rectangle(new Point(z, w), new Size(1, 1)));
//GP.AddArc
using (Graphics G = Graphics.FromImage(result))
//{

G.FillPath(mySolidBrush, GP);

// G.DrawPath(Pens.Black, GP);
//}

//result.Save("D:\\aaa.jpg");
...全文
167 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mcdjxiao 2010-04-27
  • 打赏
  • 举报
回复
UPUPUPUP
mcdjxiao 2010-04-27
  • 打赏
  • 举报
回复
我不会GDI 。。。 我没做过这方面的所以没什么头绪 ···
mcdjxiao 2010-04-27
  • 打赏
  • 举报
回复
咋写放个代码 我有点崩溃了
卧_槽 2010-04-27
  • 打赏
  • 举报
回复
如果轮廓是闭合空间还不好填充啊?碰到边就扫描下一行就是了。
mcdjxiao 2010-04-27
  • 打赏
  • 举报
回复
大哥不能这么夸张吧我说我晕我到处找你呢
mcdjxiao 2010-04-27
  • 打赏
  • 举报
回复
楼上的QQ 多少呀 我轮廓已经提取出来了就是怎么填充··
卧_槽 2010-04-27
  • 打赏
  • 举报
回复
具体算法参看
《数字图像处理》
图片边缘检测与提取及轮廓跟踪 一章。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧