首页 »PHP教程 » 点击这里:GdiPlus[29]: IGPPen: 虚线样式 »正文
点击这里:GdiPlus[29]: IGPPen: 虚线样式
来源: 发布时间:星期四, 2009年12月17日 浏览:0次 评论:0
通过画笔 DashStyle 属性可设置或读取虚线样式. 通过 SetDashPattern 思路方法或 DashPattern 属性可自定义虚线样式. 通过 DashPattern 属性还可以读出已有样式定义时 . 自定义虚线样式样式时, 需要元素数是双数 , 元素值依次表示实线和空白 长度. 通过 DashOff 属性可设置虚线偏移. 系统提供 虚线样式效果: 自定义 两种样式效果: 虚线偏移效果: 测试系统提供 虚线样式: uses GdiPlus; procedure TForm1.FormPa(Sender: TObject); var Graphics: IGPGraphics; Pen: IGPPen; Pt1,Pt2: TGPPo; i: Integer; begin Graphics := TGPGraphics.Create(Handle); Pt1.Initialize(20 , 20 ); Pt2.Initialize(200 , 20); Pen := TGPPen.Create(TGPColor.Red, 3); for i := 0 to 4 do begin Pen.DashStyle := TGPDashStyle(i); Graphics.DrawLine(Pen, Pt1, Pt2); Graphics.TranslateTransform(0, Pt1.Y); end; end; 测试自定义样式: uses GdiPlus; procedure TForm1.FormPa(Sender: TObject); const DashPatternArr: .gif' />[0..1] of Single = (16, 2); var Graphics: IGPGraphics; Pen: IGPPen; Pt1,Pt2: TGPPo; begin Pt1.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.FormPa(Sender: TObject); var Graphics: IGPGraphics; Pen: IGPPen; Pt1,Pt2: TGPPo; begin Graphics := 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.DashOff := Pen.DashPattern[0] + Pen.DashPattern[1]; Graphics.DrawLine(Pen, Pt1, Pt2); end;
相关文章
读者评论
发表评论
|
|