GdiPlus[30]: IGPPen: 线帽
StartCap 和 EndCap 属性分别用来读写两段的线帽, 测试图:
StartCap 和 EndCap 测试代码:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject); constCapArr: array[0..8] of Byte = (0, 1, 2, 3, $10, $11, $12, $13, $14); varGraphics: IGPGraphics;Pen: IGPPen;Pt1,Pt2: TGPPoint;i: Integer; beginPt1.Initialize(20, 20);Pt2.Initialize(200, 20);Graphics := TGPGraphics.Create(Handle);Pen := TGPPen.Create($FF2E8B57, 11);for i := 0 to Length(CapArr) - 1 dobeginPen.StartCap := TGPLineCap(CapArr[i]);Pen.EndCap := Pen.StartCap;Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y * 1.5);end; end;
DashCap 属性用来读写虚线线帽, 这在实线中没有效果; 测试图:
DashCap 测试代码:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject); varGraphics: IGPGraphics;Pen: IGPPen;Pt1,Pt2: TGPPoint; beginPt1.Initialize(20, 20);Pt2.Initialize(240, 20);Graphics := TGPGraphics.Create(Handle);Pen := TGPPen.Create($FF4169E1, 11);Pen.DashStyle := DashStyleDashDot;Pen.DashCap := DashCapFlat;Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y * 1.5);Pen.DashCap := DashCapRound;Graphics.DrawLine(Pen, Pt1, Pt2);Graphics.TranslateTransform(0, Pt1.Y * 1.5);Pen.DashCap := DashCapTriangle;Graphics.DrawLine(Pen, Pt1, Pt2); end;
可通过 SetLineCap 方法一起设定 StartCap、EndCap、DashCap, 测试图:
SetLineCap 测试代码:
uses GdiPlus;procedure TForm1.FormPaint(Sender: TObject); varGraphics: IGPGraphics;Pen: IGPPen; beginGraphics := TGPGraphics.Create(Handle);Pen := TGPPen.Create($FFC71585, 11);Pen.DashStyle := DashStyleDashDot;Pen.SetLineCap(LineCapRoundAnchor, LineCapArrowAnchor, DashCapTriangle);Graphics.DrawLine(Pen, 20, 30, 300, 30); end;
GdiPlus[30]: IGPPen: 线帽相关推荐
- GdiPlus[29]: IGPPen: 虚线样式
为什么80%的码农都做不了架构师?>>> 通过画笔的 DashStyle 属性可设置或读取虚线样式. 通过 SetDashPattern 方法或 DashPattern 属性可 ...
- GdiPlus[28]: IGPPen: 建立复合画笔
设置画笔的 CompoundArray 属性可得到复合画笔. 它对应的类型是 IGPCompoundArray (IGPCompoundArray = IGPArray<Single>). ...
- 博客总目录(2007.11.12 - 2010.4.25)
如果我的学习记录和历程能对你有所帮助, 我非常高兴; 但是 -- "万一" 不是高手.更不是大师, 只是利用工作之余学点东西, 并感觉学得挺吃力. 内容都是写时才会, 难免稚嫩, ...
- GdiPlus[6]: 五种画刷总览
为什么80%的码农都做不了架构师?>>> GDI+ 有五种画刷: 实心画刷: IGPSolidBrush 阴影画刷: IGPHatchBrush 纹理画刷: IGPTextur ...
- GdiPlus[44]: IGPGraphics (三) 关于文本绘制续 - IGPStringFormat
IGPStringFormat 的方法和属性: //方法: IGPStringFormat.GetTabStops(); { 获取制表位 } IGPStringFormat.SetTabStops() ...
- GdiPlus[59]: 图像(十一) IGPImageAttributes 之颜色矩阵(TGPColorMatrix)变换
IGPMatrix 矩阵 是个接口, 要通过 TGPMatrix 实例化后使用, 其内置了很多方法和属性. TGPColorMatrix 只是一个结构体, 除了矩阵数据(5*5)外, 它只有一个方法: ...
- GDI+ 学习记录(2) 画笔线帽 - Cap
//线帽 varg: TGPGraphics;p: TGPPen; beging:=TGPGraphics.Create(Canvas.Handle);g.Clear(aclWhite);p:=TGP ...
- GDIplus的初次接触--加载并显示常用格式图片
在没有接触Gdiplus之前,在vc中绘制图片,通常加载一张位图,然后进行贴图.对于现在多种多样的图片格式,之前的GDI并不支持(应该是这样的,呵呵).而使用Gdiplus则可以选择多种图片格式,比如 ...
- Linux 内核,30 年C 语言将升级至 C11
Linux 内核,30 年C 语言将升级至 C11 还在使用 89 年版 C 语言的 Linux 内核,现在终于要做出改变了.今天,Linux 开源社区宣布,未来会把内核 C 语言版本升级到 C11, ...
最新文章
- 零开始学python_从零开始学Python
- 文本特征选择 java代码_文本分类入门(十)特征选择算法之开方检验
- Android 手电筒源码
- SAP TableControl 控制单个单元格输入
- centos 安装nginx笔记
- SQL Server 2017 2019 Linux(Centos、Unbuntu16.04、Unbuntu18.04、Unbuntu20.04)安装过程详解
- 用getBoundingClientRect()来获取页面元素的位置
- 吸尘器电机拆解图解_老少皆宜居家清理更轻松?吉米A6上手把无线吸尘器体验...
- Python 字典删除元素clear、pop、popitem
- 基于 HTML5 WebGL 的 3D 服务器与客户端的通信
- java基础——java基本运算
- Bash中命令连接符的用法——一次执行多个命令-转
- C# Web Service 不使用服务引用直接调用方法(转)
- Transformer在图像复原领域的降维打击!ETH提出SwinIR:各项任务全面领先
- JavaWEB开发国际化
- bootstrap modal 关闭时右侧滚动条消失,页面左移的解决方法
- ai背景合成_视频素材不好找!图片也能生成视频啦,AI剪辑助力原创短视频创作...
- 在vue项目中调用echarts官网百度地图实例
- SAP PI PO XSLT Mapping of Adapter-Specific Message Attributes
- 面向对象的类、方法和对象
热门文章
- memwatch内存泄露检测工具
- SQLSERVER中的自旋锁
- 在Excel中实现下拉列表选择录入
- P1357 花园 (矩阵快速幂+ DP)
- Visual Studio 2019 preview中体验C# 8.0新语法
- 11. IDEA 在同一工作空间创建多个项目
- 搬运 centos7.2 apache 绑定二级目录 访问依然是apache页面
- 桥接模式下的手机-电脑-开发板连接
- do { ....} while(0) 在宏里冗余的意义
- 【原创】SQL SERVER 查询Job作业基本信息及执行情况