有时候给别人演示图片,例如培训某个软件使用的时候,往往需要在画面上画个框或者圈,提醒用户注意这是个重点。其实这个功能并不难,只需要知道Pen对象的用法就可以了。我们对框或者圈样式的控制都可以通过对Pen的控制来实现。

/**/ /// <summary>
        /// 在图片上画框
        /// </summary>
        /// <param name="bmp">原始图</param>
        /// <param name="p0">起始点</param>
        /// <param name="p1">终止点</param>
        /// <param name="RectColor">矩形框颜色</param>
        /// <param name="LineWidth">矩形框边界</param>
        /// <returns></returns>
         public  static Bitmap DrawRectangleInPicture(Bitmap bmp, Point p0, Point p1, Color RectColor,  int LineWidth,DashStyle ds)
         {
            if (bmp == null) return null;

Graphics g = Graphics.FromImage(bmp);

Brush brush = new SolidBrush(RectColor);
            Pen pen = new Pen(brush, LineWidth);
            pen.DashStyle = ds;

g.DrawRectangle(pen, new Rectangle(p0.X, p0.Y, Math.Abs(p0.X - p1.X), Math.Abs(p0.Y - p1.Y)));

g.Dispose();

return bmp;
        }


         /**/ /// <summary>
        /// 在图片上画椭圆
        /// </summary>
        /// <param name="bmp"></param>
        /// <param name="p0"></param>
        /// <param name="RectColor"></param>
        /// <param name="LineWidth"></param>
        /// <param name="ds"></param>
        /// <returns></returns>
         public  static Bitmap DrawRoundInPicture(Bitmap bmp, Point p0, Point p1, Color RectColor,  int LineWidth, DashStyle ds)
         {
            if (bmp == null) return null;

Graphics g = Graphics.FromImage(bmp);

Brush brush = new SolidBrush(RectColor);
            Pen pen = new Pen(brush, LineWidth);
            pen.DashStyle = ds;

g.DrawEllipse(pen, new Rectangle(p0.X, p0.Y, Math.Abs(p0.X - p1.X), Math.Abs(p0.Y - p1.Y)));

g.Dispose();

return bmp;
        }

转载于:https://www.cnblogs.com/chennie/archive/2012/01/17/2324569.html

C#图片处理之:在图片上画框(圈)相关推荐

  1. 实现opencv在图片上画框准确定位某个主体

    前言 本章主要讲述图片的缩小与放大,以及在图片上框出自己目标的东西 目录 实现opencv在图片上画框准确定位某个主体 一.如何在opencv内导入图片 二.如何对图片进行缩放? 1.在放入图片的基础 ...

  2. 图片 手动画框 matlab,matlab在图片上画框

    之前写过一个MATLAB在图片上画框的代码, http://blog.csdn.net/carson2005/article/details/17262811 最近使用后发现效果不好,貌似有个bug, ...

  3. ipad html 自定义裁剪图片大小,移动端图片裁剪上传插件 Mavatar.js(原创)

    插件描述:移动端头像上传,支撑头像预览和放大缩小平移,内置上传至后端请求方法. 注:请在移动端用手势查看缩放效果,PC端无法缩放 Mavatar 移动端头像上传,支撑头像预览和放大缩小平移,内置上传至 ...

  4. 爬虫requests如何提取图片_如何提取图片上的文字(办公技巧)

    是夜,公寓里,一道黑影闪过窗前,对面楼顶传来一声凄厉的猫叫声. 王美丽一个机灵,目中闪过一丝恐惧. 她面前的电脑里,正在播放<午夜凶铃>. 阴森恐怖的配音,让她全身发冷,感觉后脊梁有一股凉 ...

  5. 织梦网站上传服务器不显示图片,织梦网站图片不显示图片

    织梦网站图片不显示图片 内容精选 换一换 在"文章列表"插件中,检查"设置 > 列表数目"的"显示文章条数"和"显示分页&q ...

  6. 直接用自己服务器做图床可以吗_图床有什么用,图片放自己的服务器上不可以吗?...

    什么是图床服务器: 图床就是图片在线存储服务器,主要是用来节省流量的,一些可以把图片存放到网上并且引用到其他网站使用的服务,就像以前的网络相册. 一般用图床的,都是图片之类的静态文件非常多,把图片存储 ...

  7. php将图片导入,php中图片文件的导入,上传与下载

    ---------------------------------------------图片的导入-------------------------------------------------- ...

  8. iOS12系统图片heic如何在电脑上查看

    说到iOS12系统,只有iPhone用户应该比较熟悉些,对于安卓用户来说都会比较陌生的,而且其系统的图片格式也是比较独特的,在电脑上是无法直接查看的,那iOS12系统图片heic如何在电脑上查看呢? ...

  9. native react 图片裁剪_react native 头像上传 react-native-image-crop-picker

    之前用的是react-native-image-picker,但是当往服务器端传的时候才发现,因为没有图片裁切,所以图片过大,无法保存,所以只好更换成react-native-image-crop-p ...

最新文章

  1. .NET支持的泛型约束
  2. GO语言struct语法
  3. c语言中fflushstdin作用,C语言fflush(stdin)函数是什么意思,在什么情况下用它
  4. Python __subclasses__() 函数获取类的所有子类
  5. 2009年Silverlight十大流行应用
  6. php url路由入门实例,ThinkPHP URL 路由实例
  7. 3dm游戏运行包_权势纵横捭阖,战场龙血玄黄!三国志14火爆来袭电脑游戏
  8. 【漏洞预警】Intel爆CPU设计问题,导致win和Linux内核重设计(附测试poc)
  9. 最大流 (Maximum Flow) 之 流网络和流
  10. shell小脚本--laod博客更新hosts文件[脚本]
  11. 详解 Linux 系统日志分析
  12. Win10 Windows Defender添加信任文件的方法
  13. 网络游戏外挂制作(3)-1
  14. 【Docker学习笔记 五】深入理解Docker容器数据卷机制
  15. Java基础(17)——字节流、字符流
  16. Docker desktop 4.7版本安装提示无法访问d3dcompiler_47.dll文件解决方法
  17. git提示please tell me who you are
  18. CVE-2015-0235:幽灵(GHOST)漏洞解析
  19. java单例模式的应用场景_单例模式的常见应用场景
  20. 现代控制理论之控制发展

热门文章

  1. 重定向 php_如何使用PHP重定向
  2. 泊松积分、伽马函数——公式干货总结
  3. stellar.js_使用Stellar.js创建视差滚动网站
  4. 一封写给毕业设计er的信
  5. Idea连接数据库(oracle)
  6. UpdateData MFC
  7. H5界面关闭当前页面的方法
  8. 数据结构算法动图识记_【数据结构与算法】用动图解说数组、链表、跳表原理与实现...
  9. Python贪吃蛇游戏
  10. 4am永远 鼠标按键设置_《王者荣耀》键鼠按键映射教程