C# 绘制箭头的方法,仿微信截图的箭头

2023-05-16

C# 绘制箭头的方法,仿微信截图的箭头

效果见下图,实际上还是有区别的,箭头的起点处微信的是圆端,而我实现的是尖端。

说说我的实现吧,实现方法其实是划线,线的两端都要设置端点样式。看代码:

Point _StarPoint = new Point(0, 0);
Point _EndPoint = new Point(300, 300);

System.Drawing.Drawing2D.AdjustableArrowCap _LineCap = new System.Drawing.Drawing2D.AdjustableArrowCap(9, 9, true);   //设置一个线头	
_LineCap.Filled = true;
_LineCap.MiddleInset = 3.1f; //设置箭头中间的缩进
Pen _Pen = new Pen(Brushes.Red, 5);
_Pen.CustomStartCap = new System.Drawing.Drawing2D.AdjustableArrowCap(5, 80, true);
_Pen.CustomEndCap = (System.Drawing.Drawing2D.CustomLineCap)_LineCap;

Graphics _Graphics = this.CreateGraphics();
_Graphics.SmoothingMode = SmoothingMode.AntiAlias;
_Graphics.DrawLine(_Pen, _StarPoint, _EndPoint);
_Graphics.Dispose();

注意这一句:_LineCap.MiddleInset = 3.1f; //设置箭头中间的缩进

如果不设置箭头中间的缩进,那么绘制出来的是下面这样:

C# 的 中有很多线段端点的样式,如果需要其它不同的箭头样式,可以逐个试试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 绘制箭头的方法,仿微信截图的箭头 的相关文章

随机推荐

  • CMMI2.0和1.3之间的区别有哪些?

    CMMI资质认证已经有很多年的历史了 xff0c CMMI的版本也发生了变化 xff0c 从最初的1 3版本演变成至今2 0版本 xff0c 现在的企业在办理的时候使用也都是2 0版本 xff0c 那么这两者之间的变化是什么 xff1f 区
  • Python str isalpha方法

    目录 描述 语法 举例 1 字符串中只包含字母 2 字符串包含数字 符号和字母 描述 isalpha函数检测字符串中是否只包含字母 如果全部是字母组成的字符串 xff0c 则返回True xff0c 否则返回False isalpha 函数
  • Caffe 完全安装指南(GPU) 上

    目录 0 写在前面1 Caffe依赖包安装1 1 ProtoBuffer1 2 Boost1 3 GFLAGS1 4 GLOG1 5 BLAS1 6 ZLIB1 7 HDF51 8 LMDB和LEVELDB1 9 Snappy1 10 Op
  • 质数因子的求解

    质因子 xff08 或质因数 xff09 在数论里是指能整除给定正整数的质数 根据算术基本定理 xff0c 不考虑排列顺序的情况 下 xff0c 每个正整数都能够以唯一的方式表示成它的质因数的乘积 下面求解某一个数的质因子的情况 1 分解为
  • 常见的液晶显示模块类型

    随着市场的发展 人们更加倾向于产品的人机交互对话功能 能够实现交互的方式很多 xff0c 作为对交互界面的各种显示器液晶液晶模块以其低功耗 易控制受到设计者的青睐 于是各种型号 功能的液晶模块涌入市场 xff0c 这就需要对其进行综合及比较
  • 如何在ubuntu系统中安装gnome界面

    首先 xff0c 你需要进入ubuntu系统 xff0c 然后打开终端 然后需要这样操作 xff1a 1 更新软件源 sudo apt get update sudo apt get upgrade y 2 安装Tasksel sudo a
  • 使用 podman 将容器作为 systemd 服务运行

    前置环境要求 xff1a 需要以 CRI O 作为容器运行时 安装 CRI O 及配置国内容器镜像加速器请参考 xff1a 使用 CRI O 容器引擎 本文介绍了如何使用 podman 初始化 systemd 服务 xff0c 以两种不同的
  • VNC远程桌面到linux,提示connection refused(10061)解决办法

    确认server端的VNC服务开启 xff0c service vncserver start xff0c 检测状态时ok的 ps ef grep vnc xff0c 来查看不是已经开启多个vnc连接 如果有多个vnc连接 xff0c 使用
  • nginx前端,tomcat后端服务器获取客户的真实IP,包括tomcat访问日志获取真实IP的配置

    在安装完以nginx 43 tomcat的WEB服务器 xff0c 使用默认的配置 xff0c 会导致服务器上的日志文件 xff0c 只有nginx日志能获取到客户的真实IP xff0c 而tomcat以及上面的JAVA WEB应用均不能正
  • 腾讯自研交换机系统优化之路

    一 Tencent NOS概述 SONiC is an open source network operating system based on Linux that runs on switches from multiple vend
  • vue-cli 插件开发补充

    官网地址 xff1a https cli vuejs org zh api地址 xff1a https cli vuejs org dev guide plugin api html Plugin API api version 64 vu
  • ubuntu 安装开发工具

    因为各种原因 又回到了Ubuntu系统 以后开始会陆续记些笔记 注意要点 选择ubuntu16 能自动识别新机型的物理硬件 集成了较新较全的驱动 比如网卡和声卡驱动都有 最主要是这两个 没有这两个就上不了网 听不到声音 解决很费时间 安装系
  • ubuntu vscode 使用clang-format and editor 插件序列化代码

    在使用vscode时 xff0c 可以加入插件 xff0c 在写代码的时候自动格式化代码 xff0c 对编码风格做一个自动化的处理 xff0c 这样会使同一个部门使用同一种规格编码 xff0c 在review代码时会很轻松 这里使用一键化的
  • 记录生活,记录学习----我的2016

    过着2017年的日子 xff0c 思考着2016年人生的变化 xff0c 或许 xff0c 最大的变化是懂得记录学习 xff0c 记录生活吧 2016年 xff0c 博客进入了我的生活 xff0c 从年初的寥寥数篇博客 xff0c 到现在C
  • 《Learning Deep Features for Discriminative Localization》——CAM热力图翻译及划重点

    摘要 在这项工作中 xff0c 我们重新审视了 Network in network 中提出的全局平均 池化层 xff08 global average pooling xff09 xff0c 并阐明了它是如何通过图片标签就能让卷积神经网络
  • VS2019的C++项目如何查看源文件(.h,.cc.cpp等)所在的工程

    在大型的C 43 43 项目中 xff0c 一个解决方案有多个 vcxproj工程文件 每个工程文件里又有很多源文件 xff0c 比如 xff1a 8071个项目 xff0c 文件数则更多 xff0c 因此 xff0c 当你打开一个源文件时
  • csdn排名出了Bug了?一场因排名引发的血案!

    一石激起千层浪 xff0c 排名让人很彷徨 xff01 很多人已经注意到了 xff0c 博客的排名出现了非常大的变化 xff01 不只是排名 xff0c CSDN最近的动作可是很频繁 xff0c 让我们来细数CSDN那些改变 但是 xff0
  • CSDN博主排名更新,看看原来的前1000名博主现在的排名如何

    CSDN博主排名更新 xff0c 看看新规则 原来的排名参考 xff1a CSDN前1000名博主 博客原排名新排名stpeace 1 25yuanmeng001 2 143yjclsx 3 72phphot 4 427833Augusdi
  • 程序员的求爱日:比1024多一点,1025,要你爱我!

    转眼又要到了1024 xff0c 还记得去年的1024活动 xff0c 我写一篇 xff1a 今天是程序员节 xff0c 明天就是求爱日啦 xff01 今年的活动 xff1a 程序员邂逅鼓励师的正确姿势 xff01 鼓励师 这个名词 xff
  • C# 绘制箭头的方法,仿微信截图的箭头

    C 绘制箭头的方法 xff0c 仿微信截图的箭头 效果见下图 xff0c 实际上还是有区别的 xff0c 箭头的起点处微信的是圆端 xff0c 而我实现的是尖端 说说我的实现吧 xff0c 实现方法其实是划线 xff0c 线的两端都要设置端