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

GdiPlus[12]: IGPLinearGradientBrush 的構建方式之二

編輯:Delphi

 第二種構建方式: TGPLinearGradIEntBrush.Create(矩形, 顏色1, 顏色2, 漸變模式);

  測試效果圖:

GdiPlus[12]: IGPLinearGradientBrush 的構建方式之二

  測試代碼:

uses GdiPlus; 
 
procedure TForm1.FormPaint(Sender: TObject); 
const 
 C1 = $FFFF0000 ; 
 C2 = $FF0000FF; 
var 
 Graphics: IGPGraphics; 
 Rect, RectBrush: TGPRect; 
 Brush: IGPLinearGradIEntBrush; 
begin 
 Graphics := TGPGraphics.Create(Canvas.Handle); 
 Rect.Initialize(10, 10, 200, 150); 
 RectBrush.Initialize(Rect.X + Rect.Width div 8, 
            Rect.Y + Rect.Height div 8, 
            Rect.Width div 4, 
            Rect.Height div 4); 
 
 //LinearGradIEntModeHorizontal 是默認值 
 Brush := TGPLinearGradientBrush.Create(RectBrush, C1, C2, LinearGradIEntModeHorizontal); 
 Graphics.FillRectangle(Brush, Rect); 
 
 Graphics.TranslateTransform(0, Rect.Height + Rect.Y); 
 Brush := TGPLinearGradientBrush.Create(RectBrush, C1, C2, LinearGradIEntModeVertical); 
 Graphics.FillRectangle(Brush, Rect); 
 
 Graphics.TranslateTransform(Rect.Width + Rect.X, -Graphics.Transform.OffsetY); 
 Brush := TGPLinearGradientBrush.Create(RectBrush, C1, C2, LinearGradIEntModeForwardDiagonal); 
 Graphics.FillRectangle(Brush, Rect); 
 
 Graphics.TranslateTransform(0, Rect.Height + Rect.Y); 
 Brush := TGPLinearGradientBrush.Create(RectBrush, C1, C2, LinearGradIEntModeBackwardDiagonal); 
 Graphics.FillRectangle(Brush, Rect); 
end; 
 


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