当前位置: 首页 > news >正文

重庆免费微网站建设wordpress 扫描工具

重庆免费微网站建设,wordpress 扫描工具,网站开发都需要什么工作,wordpress分类 菜单今天写程序中有一个地方用到了漫水填充#xff08;FloodFill#xff09;。所谓漫水填充#xff0c;简单来说#xff0c;如下图中左图#xff0c;白布上有一块红色的斑点#xff0c;在这个红色的斑点上点一下#xff0c;就自动选中了和该点相连的红色的区域#xff0c;接…今天写程序中有一个地方用到了漫水填充FloodFill。所谓漫水填充简单来说如下图中左图白布上有一块红色的斑点在这个红色的斑点上点一下就自动选中了和该点相连的红色的区域接着将该区域替换成指定的颜色如下图中右图所示。 GDI中有一个函数 ExtFloodFill 可以用于漫水填充。函数原型是 BOOL ExtFloodFill(HDC hdc,int nXStart,int nYStart,COLORREF crColor,UINT fuFillType) 在C#中使用这个函数并不好用这里有一个例子 http://www.codeproject.com/Feature/WickedCode.aspx?msg2364985 。照猫画虎的写了一遍结果返回的结果是false——填充失败。 对win32这些东西看着就烦也没心思去看到底哪里出错了干脆自己写一个 FloodFill 算法得了。 算法很简单 1将最初的点作为种子点压入栈中 2弹出一个种子点把它涂成目标颜色 3对于种子点来说和它相邻的有4个像素判断这4个像素中的颜色是否是背景色如果是则作为新的种子点入栈 4循环至栈空。 实现起来也很简单一共只需要22行代码比用DllImport去调用ExtFloodFill代码量还少 void FloodFill(ImageRgb24 img, Point location, Rgb24 backColor, Rgb24 fillColor) {     int width img.Width;     int height img.Height;     if (location.X 0 || location.X width || location.Y 0 || location.Y height) return;     if (backColor fillColor) return;     if (img[location.Y, location.X] ! backColor) return;     StackPoint points new StackPoint();     points.Push(location);     int ww width -1;     int hh height -1;     while (points.Count 0)     {         Point p points.Pop();         img[p.Y, p.X] fillColor;         if (p.X 0 img[p.Y, p.X - 1] backColor)         {             img[p.Y, p.X - 1] fillColor;             points.Push(new Point(p.X - 1, p.Y));         }         if (p.X ww img[p.Y, p.X 1] backColor)         {             img[p.Y, p.X 1] fillColor;             points.Push(new Point(p.X 1, p.Y));         }         if (p.Y 0 img[p.Y - 1, p.X] backColor)         {             img[p.Y - 1, p.X] fillColor;             points.Push(new Point(p.X, p.Y - 1));         }         if (p.Y hh img[p.Y 1, p.X] backColor)         {             img[p.Y 1, p.X] fillColor;             points.Push(new Point(p.X, p.Y 1));         }     } } 有这个算法为基础类似photoshop的魔术棒选择工具就很容易实现了。漫水填充FloodFill是查找和种子点联通的颜色相同的点魔术棒选择工具则是查找和种子点联通的颜色相近的点将和初始种子点颜色相近的点压进栈作为新种子。 在photoshop cs5中新引进了快速选择工具这个工具看起来很神奇它背后的算法也研究了有些年了就是抠图技术有兴趣的可以去研究这里有一篇很好的综述文章《Image and Video Matting: A Survey》。
http://wiki.neutronadmin.com/news/155770/

相关文章:

  • 深圳网站建设q双赢世讯宁波网站建设推广报价
  • 手机网站有吗个人公众号怎么做文章推广
  • 做网站要不要买服务器设计素材网站p
  • 策划方案网站wordpress 导入数据库
  • 网站建设资讯平台网站建设-丹东
  • 什么样的网站开发比较吃香百度移动网站建设有几种
  • 郑州专业网站建设在哪里平面网页设计教学
  • 邯郸网站建设的地方合同网站开发 设计 后期维护
  • 漳州建设银行网站53套网站源码
  • 红河学院网站建设做彩票网站合法吗
  • wordpress 网站改名顺德网站建设价位
  • 网站建设流程步骤为需求分析销售系统软件
  • 华资源网站建设贵州网站建设吧
  • wordpress优惠券win11优化大师
  • 做程序教程网站赚钱吗唐山市城乡建设网站
  • 免费观看厦门seo管理
  • 企业网站建设策划书1万字静态网站生成
  • php美食网站开发的意义公司做网站域名的好处
  • 大数据对网站建设教育的影响门户网站是如何盈利的
  • 建设学校网站的原因个人备案的域名拿来做别的网站
  • 做网站一般用什么字体长春做网站优化价格
  • 莱州网站建设教程动态ip怎么建设网站
  • 北京网站建设管庄怎么看网站有没有做百度推广
  • 德州建设街小学网站全国工商企业查询官网
  • 编制综合网站平台的公司排名常州做企业网站的公司
  • 深圳外贸电商网站建设linux建立网站
  • 如何创建一个属于自己的网站做卡盟网站赚钱吗
  • 怎么添加网站权重建网站
  • 做网贷网站多少钱做网站的工具
  • 天津企业网站建站小店网站怎么做