GdiPlus[29]: IGPPen: 虚线样式
为什么80%的码农都做不了架构师?>>>
通过画笔的 DashStyle 属性可设置或读取虚线样式.
通过 SetDashPattern 方法或 DashPattern 属性可自定义虚线样式.
通过 DashPattern 属性还可以读出已有样式定义时的数组.
自定义虚线样式样式时, 需要元素数是双数的数组数组, 元素值依次表示实线与空白的长度.
通过 DashOffset 属性可设置虚线偏移.
系统提供的虚线样式效果:
自定义的两种样式效果:
虚线偏移效果:
测试系统提供的虚线样式:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject);
varGraphics: IGPGraphics;Pen: IGPPen;Pt1,Pt2: TGPPoint;i: Integer;
beginGraphics := TGPGraphics.Create(Handle);Pt1.Initialize(20, 20);Pt2.Initialize(200, 20);Pen := TGPPen.Create(TGPColor.Red, 3);for i := 0 to 4 dobeginPen.DashStyle := TGPDashStyle(i);Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y);end;
end;
测试自定义样式:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject);
constDashPatternArr: array[0..1] of Single = (16, 2);
varGraphics: IGPGraphics;Pen: IGPPen;Pt1,Pt2: TGPPoint;
beginPt1.Initialize(20, 20);Pt2.Initialize(200, 20);Graphics := TGPGraphics.Create(Handle);Pen := TGPPen.Create($FF0000FF, 2);Pen.SetDashPattern([8, 2, 1, 2]);Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y);Pen.SetDashPattern(DashPatternArr);Graphics.DrawLine(Pen, Pt1, Pt2);Text := IntToStr(Ord(Pen.DashStyle)); //此值应该是 5, 也就是自定义样式 DashStyleCustom
end;
虚线偏移测试:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject);
varGraphics: IGPGraphics;Pen: IGPPen;Pt1,Pt2: TGPPoint;
beginGraphics := TGPGraphics.Create(Handle);Pt1.Initialize(20, 30);Pt2.Initialize(200, 30);Pen := TGPPen.Create($FFC71585, 4);Pen.DashStyle := DashStyleDashDotDot;Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y);Pen.DashOffset := Pen.DashPattern[0] + Pen.DashPattern[1];Graphics.DrawLine(Pen, Pt1, Pt2);
end;
转载于:https://my.oschina.net/hermer/blog/319032
GdiPlus[29]: IGPPen: 虚线样式相关推荐
- html dashed 属性,css虚线样式dotted和dashed
讲到css虚线样式,应该会想到border的solid,网页布局中solid用的概率最高了,要有css虚线的效果还可以用图片做背景,但是不推荐,尽量使用css虚线样式做这个虚线的效果,那么css虚线样 ...
- php虚线_实现css虚线样式的两种方式:dotted和dashed(实例)
css虚线边框怎么做?html虚线边框设置一般会想到border的solid,html网页布局中solid用的概率最高了,要有css虚线的效果还可以用图片做背景,但是不推荐,尽量使用css虚线样式做这 ...
- html dashed显示实线怎么改,实现css虚线样式的两种方式:dotted和dashed(实例)
css虚线边框怎么做?html虚线边框设置一般会想到border的solid,html网页布局中solid用的概率最高了,要有css虚线的效果还可以用图片做背景,但是不推荐,尽量使用css虚线样式做这 ...
- html怎么添加左侧点虚线,css虚线样式,怎么在css里添加虚线
css虚线样式,怎么在css里添加虚线 内容导读:控制div线框的是border,我们可以具体设置四条边的线框是否显示,也可以去设置虚线框的颜色和粗细.线框的设置可以让div的块状更加明显,至于是用虚 ...
- php hr样式虚线,CSS 虚线样式
CSS 虚线样式 2010-03-03 效果演示 none: Defines no border dotted: Defines a dotted border dashed: Defines a d ...
- php hr样式虚线,CSS的虚线样式怎么实现
说到CSS的虚线样式,那么我们会联想到border的solid,在网页的布局里solid用的概率应该是最高的了,但是大家知道还有dotted虚线和ashed虚线吗?今天来给大家介绍这俩种属性做出虚线的 ...
- php 去掉css样式,css虚线样式怎么去掉
当超链接变为活动状态或获得焦点时,链接周围会出现一条虚线,以区别于其他链接,这是超链接的默认行为.它基本上是虚线轮廓,不会像边框那样影响周围的元素.想要去掉css虚线样式,我们可以使用CSS属性&qu ...
- GdiPlus[30]: IGPPen: 线帽
StartCap 和 EndCap 属性分别用来读写两段的线帽, 测试图: StartCap 和 EndCap 测试代码: uses GdiPlus;procedure TForm1.FormPain ...
- [WTL/ATL]_[Gdiplus]_[绘制虚线并设置破折号空格的宽度]
场景 WTL界面开发时,有些情况下需要绘制虚线,比如圆角矩形的虚线,默认的破折号和点之间的空格特别小,看着比较密集,那么如何增加点线之间的空格,或者增加破折号的长度? 说明 使用Gdiplus绘制圆角 ...
最新文章
- ABP框架展示异常信息
- 了解EOS看这一篇就够了一、团队二、技术三、项目进度四、争议和风险五、展望
- 深度学习下的医学图像分析 2
- python response.read_AttributeError:“Response”对象没有“read”属性
- 普通人看Build 2019 值得留心的亮点有哪些?
- eos操作系统_EOS相机统一的用户界面
- java怎么处理ajax请求,java怎么用ajax请求?jquery ajax请求后台的简单例子
- JSON Stringify示例–如何使用JS解析JSON对象
- 模式识别:聚类分析2020.05.27class
- 华为辟谣将发布石墨烯电池手机;梁建章回应携程杀熟;GitLab 12.6 发布 | 极客头条...
- nodejs+socket.io即时聊天实例
- oracle数据库王珊,数据库系统概论 王珊 教材部分总结
- SpringMVC的Model、Model Map、ModelAndView
- Silverlight的依赖属性与附加属性(四)
- 【微软2014实习生及秋令营技术类职位在线測试】题目1 : String reorder
- android 蓝牙耳机插拔,一种插拔式蓝牙耳机的制作方法
- 小学计算机表格课件,小学信息技术级轻松做表格Word表格制作PPT课件.ppt
- python打开网页后点击网页按钮_python单击网页上的按钮
- 量化交易有因子动物园 深度学习里有模型动物园(ModelZoo)又叫模型市场基于深度学习的增量学习,迁移学习等技术发展而来【调研】
- 腾讯笔试算法题-开锁
热门文章
- Facebook 推出查找SSRF 漏洞的新工具
- FBI 和 NSA 披露俄罗斯国家黑客使用的 Linux 恶意软件
- GitHub 推出安全新功能,帮助开源软件发现漏洞和机密信息
- C++使用VARIANT实现二维数组的操作
- Ubuntu 16.04 LTS 安装Mongodb 3.4
- 阿里“双十一”决胜物流战 智能、开放才能走的更远
- html5扫面二维码逻辑
- QPushButton 与 QListWidget 的按键响应
- 【Android】不依赖焦点和选中的TextView跑马灯
- [导入]在vs2005中调用远程WebService(幻想曲)