程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> GdiPlus[32]: IGPPen: LineJoin、MiterLimit

GdiPlus[32]: IGPPen: LineJoin、MiterLimit

編輯:Delphi

LineJoin 測試效果圖:

GdiPlus[32]: IGPPen: LineJoin、MiterLimit

  LineJoin 測試代碼:

uses GdiPlus; 
 
procedure TForm1.FormPaint(Sender: TObject); 
const 
 Pts: array[0 ..2 ] of TGPPoint = ((X:90 ;Y:80), (X:240;Y:30), (X:240;Y:80)); 
var 
 Graphics: IGPGraphics; 
 Pen: IGPPen; 
begin 
 Graphics := TGPGraphics.Create(Handle); 
 Pen := TGPPen.Create(TGPColor.Red, 28); 
 
 Pen.LineJoin := LineJoinMiter; //默認值 
 Graphics.DrawPolygon(Pen, Pts); 
 Graphics.TranslateTransform(0, 80); 
 
 Pen.LineJoin := LineJoinBevel; 
 Graphics.DrawPolygon(Pen, Pts); 
 Graphics.TranslateTransform(0, 80); 
 
 Pen.LineJoin := LineJoinRound; 
 Graphics.DrawPolygon(Pen, Pts); 
end; 

  MiterLimit 測試效果圖:

GdiPlus[32]: IGPPen: LineJoin、MiterLimit

  MiterLimit 測試代碼:

unit Unit1; 
 
interface 
 
uses 
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
 Dialogs, ComCtrls; 
 
type 
 TForm1 = class(TForm) 
  TrackBar1: TTrackBar; 
  procedure FormPaint(Sender: TObject); 
  procedure TrackBar1Change(Sender: TObject); 
  procedure FormCreate(Sender: TObject); 
 end; 
 
var 
 Form1: TForm1; 
 
implementation 
 
{$R *.dfm} 
 
uses GdiPlus; 
 
procedure TForm1.FormCreate(Sender: TObject); 
begin 
 TrackBar1.ShowSelRange := False; 
 TrackBar1.Height := 23; 
 TrackBar1.Min := 0; 
 TrackBar1.Max := 100; 
 TrackBar1.Position := TrackBar1.Max; 
end; 
 
procedure TForm1.FormPaint(Sender: TObject); 
const 
 PtArr: array[0..2] of TGPPoint = ((X:90;Y:80), (X:240;Y:30), (X:240;Y:80)); 
var 
 Graphics: IGPGraphics; 
 Pen: IGPPen; 
begin 
 Graphics := TGPGraphics.Create(Canvas.Handle); 
 Pen := TGPPen.Create($FF2E8B57, 28); 
 
 Pen.MiterLimit := TrackBar1.Position / 10; 
 Graphics.DrawPolygon(Pen, PtArr); 
end; 
 
procedure TForm1.TrackBar1Change(Sender: TObject); 
begin 
 Repaint; 
end; 
 
end. 

  MiterLimit 測試窗體:

object Form1: TForm1 
 Left = 0 
 Top = 0 
 Caption = 'Form1' 
 ClIEntHeight = 138 
 ClIEntWidth = 266 
 Color = clBtnFace 
 Font.Charset = DEFAULT_CHARSET 
 Font.Color = clWindowText 
 Font.Height = -11 
 Font.Name = 'Tahoma' 
 Font.Style = [] 
 OldCreateOrder = False 
 Position = poDesktopCenter 
 OnCreate = FormCreate 
 OnPaint = FormPaint 
 PixelsPerInch = 96 
 TextHeight = 13 
 object TrackBar1: TTrackBar 
  Left = 2 
  Top = 112 
  Width = 261 
  Height = 45 
  TabOrder = 0 
  OnChange = TrackBar1Change 
 end 
end 


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved