System.Drawing.Drawing2D 命名空間

提供進階二維和向量圖形功能。

類別

AdjustableArrowCap

表示可調整的箭號形狀的線條端點。 此類別無法獲得繼承。

Blend

定義 LinearGradientBrush 物件的漸變圖樣。 此類別無法獲得繼承。

ColorBlend

定義用於多色漸層的變化色彩漸變之色彩和位置陣列。 此類別無法獲得繼承。

CustomLineCap

封裝自訂的使用者定義線條端點。

GraphicsContainer

表示圖形容器 (Container) 的內部資料。 當使用 GraphicsBeginContainer() 方法儲存 EndContainer(GraphicsContainer) 物件的狀態時,會使用這個類別。 此類別無法獲得繼承。

GraphicsPath

表示一系列連接的直線和曲線。 此類別無法獲得繼承。

GraphicsPathIterator

提供在 GraphicsPath 中逐一查看子路徑,並測試每個子路徑中含有之形狀類型的功能。 此類別無法獲得繼承。

GraphicsState

表示 Graphics 物件的狀態。 這個物件是由 Save() 方法的呼叫所傳回的。 此類別無法獲得繼承。

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+ 原生程式庫,該程式庫會隨附于作業系統的一部分。 某些 Windows sku (例如 Windows Server Core 或 Windows Nano)不會將這個原生程式庫納入為作業系統的一部分。 如果您使用這個命名空間,而且無法載入程式庫,則會在執行時間擲回例外狀況。

  • 命名空間中的某些類型 System.Drawing 依賴GDI+,Windows services 和 ASP.NET Core 和 ASP.NET 應用程式中並不支援。 這些類型都在system.object 中。 Common NuGet 套件,並包含 System.Drawing.BitmapSystem.Drawing.Font 。 不過,命名空間中的基本類型(例如 System.Drawing.ColorSystem.Drawing.SizeSystem.Drawing.PointSystem.Drawing.Rectangle )可以在任何應用程式中使用。

  • 在 .net 5 和先前的版本中, Common NuGet 套件適用于 Windows、Linux 和 macOS。 不過,有一些平臺差異。 在 Linux 和 macOS 上,GDI+ 的功能是由libgdiplus) 程式庫所執行。 此程式庫預設不會安裝在大部分的 Linux 發行版本中,而且不支援 Windows 和 macOS 上的所有 GDI+ 功能。 也有一些平臺無法使用 libgdiplus。 若要在 Linux 和 macOS 上使用來自一般套件的類型,您必須分別安裝 libgdiplus。 如需詳細資訊,請參閱在 Linux 上安裝 .net在 macOS 上安裝 .net

  • 在 .net 6 和更新版本中,只有在 Windows 作業系統上才支援「NuGet」套件。 如需詳細資訊,請參閱System. Drawing。 Windows 僅支援 Common

如果您無法搭配 System.Drawing 您的應用程式使用,建議的替代方案包括ImageSharpSkiaSharpWindows 影像處理元件Maui。

下表列出命名空間中的一些重要類別和列舉,並依 System.Drawing.Drawing2D 類別分組。

類別類別目錄 詳細資料
-圖形和圖形路徑 GraphicsStateGraphicsContainer 類別會報告目前物件的相關資訊 GraphicsGraphicsPath 類別代表一連串的線條和曲線。 GraphicsPathIteratorPathData 類別提供物件內容的詳細資訊 GraphicsPath
-矩陣和轉換的相關類型 Matrix類別代表幾何轉換的矩陣。 MatrixOrder列舉會指定矩陣轉換的順序。
-筆刷類別 PathGradientBrushHatchBrush 類別可讓您分別使用漸層或影線圖樣來填滿圖形。
-與行相關的列舉 和列舉可 LineCap CustomLineCap 讓您指定線條的帽樣式。 、 LineJoin 列舉可讓您指定在路徑中聯結兩行的方式。 PenAlignment當您繪製線條時,列舉可讓您指定繪圖提示的對齊方式。 PenType列舉會指定應填滿行的模式。
-與填滿圖案和路徑相關的列舉 HatchStyle列舉會指定的填滿樣式 HatchBrushBlend類別會指定的 blend 模式 LinearGradientBrushFillMode列舉會指定的填滿樣式 GraphicsPath

警告

命名空間中的類別 System.Drawing.Drawing2D 不支援在 Windows 或 ASP.NET 服務中使用。 嘗試在其中一個應用程式類型中使用這些類別可能會產生未預期的問題,例如服務效能降低和執行時間例外狀況。

另請參閱