System.Drawing.Drawing2D 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供進階二維和向量圖形功能。
類別
AdjustableArrowCap |
表示可調整的箭號形狀的線條端點。 此類別無法獲得繼承。 |
Blend |
定義 LinearGradientBrush 物件的漸變圖樣。 此類別無法獲得繼承。 |
ColorBlend |
定義用於多色漸層的變化色彩漸變之色彩和位置陣列。 此類別無法獲得繼承。 |
CustomLineCap |
封裝自訂的使用者定義線條端點。 |
GraphicsContainer |
表示圖形容器 (Container) 的內部資料。 當使用 Graphics 和 BeginContainer() 方法儲存 EndContainer(GraphicsContainer) 物件的狀態時,會使用這個類別。 此類別無法獲得繼承。 |
GraphicsPath |
表示一系列連接的直線和曲線。 此類別無法獲得繼承。 |
GraphicsPathIterator |
提供在 GraphicsPath 中逐一查看子路徑,並測試每個子路徑中含有之形狀類型的功能。 此類別無法獲得繼承。 |
GraphicsState | |
HatchBrush |
使用規劃樣式、前景色彩和背景色彩來定義矩形筆刷。 此類別無法獲得繼承。 |
LinearGradientBrush |
使用線形漸層封裝 Brush。 此類別無法獲得繼承。 |
Matrix |
封裝代表幾何轉換的 3 乘 3 仿射矩陣。 此類別無法獲得繼承。 |
PathData |
含有組成 GraphicsPath 物件的圖形資料。 此類別無法獲得繼承。 |
PathGradientBrush |
封裝 Brush 物件,這個物件會使用漸層來填滿 GraphicsPath 物件的內部。 此類別無法獲得繼承。 |
RegionData |
封裝組成 Region 物件的資料。 此類別無法獲得繼承。 |
列舉
CombineMode |
指定不同裁剪區域的組合方式。 |
CompositingMode |
指定來源色彩如何與背景色彩組合。 |
CompositingQuality |
指定要在合成期間使用的品質等級。 |
CoordinateSpace |
指定估算座標時所使用的系統。 |
DashCap |
指定要在短折線的每個破折號兩端使用的圖形形狀類型。 |
DashStyle |
指定使用 Pen 物件繪製的虛線樣式。 |
FillMode |
指定如何填滿關閉路徑的內部。 |
FlushIntention |
指定是否立即結束 (清除) 或儘快執行在圖形堆疊中的命令。 |
HatchStyle |
指定 HatchBrush 物件可用的不同花紋。 |
InterpolationMode |
InterpolationMode 列舉型別會指定縮放或旋轉影像時所使用的演算法。 |
LinearGradientMode |
指定線形漸層的方向。 |
LineCap |
指定 Pen 物件可以用來結束線條的可用端點樣式。 |
LineJoin |
指定如何聯結包含在 GraphicsPath 物件的圖形 (子路徑) 中之連續直線或曲線線段。 |
MatrixOrder |
指定矩陣變換作業的順序。 |
PathPointType |
指定在 GraphicsPath 物件中的點類型。 |
PenAlignment |
指定與假設的零寬度線條相關聯之 Pen 物件的對齊。 |
PenType |
指定 Pen 物件用來填滿線條的填色類型。 |
PixelOffsetMode |
指定在呈現期間像素如何位移。 |
QualityMode |
指定呈現 GDI+ 物件時的整體品質。 |
SmoothingMode |
指定平滑處理 (反鋸齒補償) 是否套用至直線和曲線,以及填滿的區域的邊緣。 |
WarpMode |
指定 Warp 方法中所套用的彎曲變換。 |
WrapMode |
指定在紋理或漸層小於要填滿的區域時的拼接方式。 |
備註
警告
System.Drawing
命名空間對於某些作業系統和應用程式類型有一些限制。
在 Windows 上,
System.Drawing
取決於 GDI+ 原生程式庫,該程式庫隨附于 OS 中。 某些 Windows SKU,例如 Windows Server Core 或 Windows Nano,不包含此原生程式庫作為 OS 的一部分。 如果您使用此命名空間,且無法載入程式庫,則會在執行時間擲回例外狀況。命名空間中的
System.Drawing
某些類型依賴GDI+,Windows 服務和 ASP.NET Core和 ASP.NET 應用程式不支援此類型。 這些類型位於 System.Drawing.Common NuGet 套件中,並包含 System.Drawing.Bitmap 和 System.Drawing.Font 。 不過,命名空間中的基本類型,例如 System.Drawing.Color 、 System.Drawing.Size 、 System.Drawing.Point 和 System.Drawing.Rectangle ,可以在任何應用程式中使用。在 .NET 5 和舊版中, System.Drawing.Common NuGet 套件可在 Windows、Linux 和 macOS 上運作。 不過,有一些平臺差異。 在 Linux 和 macOS 上,GDI+ 功能是由 libgdiplus) 程式庫實作。 此程式庫預設不會安裝在大部分 Linux 發行版本中,且不支援 Windows 和 macOS 上 GDI+ 的所有功能。 也有一個平臺完全無法使用 libgdiplus。 若要在 Linux 和 macOS 上使用 System.Drawing.Common 套件中的類型,您必須個別安裝 libgdiplus。 如需詳細資訊,請參閱 在 Linux 上安裝 .NET 或在 macOS 上安裝 .NET。
在 .NET 6 和更新版本中,只有 Windows 作業系統才支援 System.Drawing.Common NuGet 套件。 如需詳細資訊,請參閱 僅限 Windows 上支援的 System.Drawing.Common。
如果您無法搭配應用程式使用 System.Drawing
,建議的替代方案包括 ImageSharp、 SkiaSharp、 Windows Imaging Components和 Microsoft.Maui.Graphics。
下表列出命名空間中的 System.Drawing.Drawing2D 一些重要類別和列舉,並分組為類別。
類別類別目錄 | 詳細資料 |
---|---|
- 圖形和圖形路徑 | GraphicsState和 GraphicsContainer 類別會報告目前 Graphics 物件的相關資訊。 GraphicsPath 類別代表一系列的線條和曲線。 GraphicsPathIterator和 PathData 類別提供 物件內容 GraphicsPath 的詳細資訊。 |
- 矩陣和轉換相關類型 | 類別 Matrix 代表幾何轉換的矩陣。 列舉 MatrixOrder 會指定矩陣轉換的順序。 |
- 筆刷類別 | PathGradientBrush和 HatchBrush 類別可讓您分別以漸層或影線圖樣填滿圖形。 |
- 與行相關的列舉 | LineCap和 CustomLineCap 列舉可讓您指定線條的上限樣式。 LineJoin列舉可讓您指定如何在路徑中聯結兩行。 列舉 PenAlignment 可讓您在繪製線條時指定繪圖提示的對齊方式。 列舉 PenType 會指定線條應該填滿的模式。 |
- 與填滿圖形和路徑相關的列舉 | 列舉 HatchStyle 會指定 的 HatchBrush 填滿樣式。 類別 Blend 會指定 的 LinearGradientBrush 混合模式。 列舉 FillMode 會指定 的 GraphicsPath 填滿樣式。 |
警告
命名空間中的 System.Drawing.Drawing2D 類別不支援在 Windows 或 ASP.NET 服務中使用。 嘗試在這些應用程式類型之一中使用這些類別可能會產生非預期的問題,例如服務效能降低和執行時間例外狀況。