首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

Delphi GDI+ 學習筆記 (4):PenAlignment 畫筆對齊模式

     編輯:Delphi

描邊位置控制:Center (置中) vs Inset (內縮)

SetAlignment 決定畫筆幾何寬度相對於理論輪廓線的分布。PenAlignmentCenter (預設) 筆寬對稱分佈於輪廓兩側;PenAlignmentInset 筆寬完全向內縮,不超出輪廓外緣。GDI+ 僅支援這兩種,Left/Right/Outset 為保留值。

範例:同一橢圓,Center vs Inset


p.SetAlignment(PenAlignmentCenter); // 預設
g.DrawEllipse(p, rect);
g.FillEllipse(sb, rect); // 填充可見內縮差異

p.SetAlignment(PenAlignmentInset); // 內縮
g.DrawEllipse(p, rect);
g.FillEllipse(sb, rect);

PenAlignment 對照

Delphi微軟行為
PenAlignmentCenterCenter筆寬置中於理論線 (預設)
PenAlignmentInsetInset筆寬向內縮,不超出輪廓
-Left無定義 (保留)
-Right無定義 (保留)
-Outset無定義 (保留)

視覺差異

  • Center:描邊外緣超出填充區域,填充會蓋住描邊內半部
  • Inset:描邊完全在填充區域內,邊緣銳利、不外溢

Inset 模式適合像素精確對齊、列印輸出、UI 邊框不外擴需求。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved