System.Drawing.Imaging 命名空間

提供進階 GDI+ 影像處理功能。 基本圖形功能是由 System.Drawing 命名空間所提供。

類別

BitmapData

指定點陣圖影像的屬性 (Attribute)。 BitmapData 類別是由 LockBits 類別的 UnlockBits(BitmapData)Bitmap 方法所使用。 無法被繼承。

ColorMap

定義轉換色彩的對應。 ImageAttributes 類別的數個方法會藉由使用色彩重新對應表 (這是 ColorMap 結構的陣列) 來調整影像色彩。 無法被繼承。

ColorMatrix

定義含有 RGBAW 空間座標的 5 x 5 矩陣。 ImageAttributes 類別的多個方法會使用色彩矩陣來調整影像色彩。 此類別無法獲得繼承。

ColorPalette

定義組成色板的色彩陣列。 色彩為 32 位元 ARGB 色彩。 無法被繼承。

Encoder

Encoder 物件會封裝全域唯一識別項 (GUID),這個識別項識別影像編碼器參數的分類。

EncoderParameter

用於將值或值的陣列傳遞至影像編碼器。

EncoderParameters

封裝 EncoderParameter 物件的陣列。

FrameDimension

提供取得影像框架大小的屬性。 無法被繼承。

ImageAttributes

包含如何在呈現期間操作點陣圖和中繼檔色彩的相關資訊。

ImageCodecInfo

ImageCodecInfo 類別提供必要的儲存成員和方法,以擷取已安裝之影像編碼器和解碼器 (稱為轉碼器) 的所有相關資訊。 無法被繼承。

ImageFormat

指定影像的檔案格式。 無法被繼承。

Metafile

定義圖形中繼檔 (Metafile)。 中繼檔,包含用在說明一系列可記錄 (建構) 和重播 (顯示) 之圖形操作的記錄。 這個類別是不可繼承的。

MetafileHeader

含有關聯之 Metafile 的屬性。 無法被繼承。

MetaHeader

含有 Windows 格式 (WMF) 中繼檔 (Metafile) 的資訊。

PropertyItem

封裝中繼資料 (Metadata) 屬性來包括在影像檔中。 無法被繼承。

WmfPlaceableFileHeader

定義可置入中繼檔 (Metafile)。 無法被繼承。

列舉

ColorAdjustType

指定哪個 GDI+ 物件使用色彩調整資訊。

ColorChannelFlag

指定 CMYK (青、洋紅、黃、黑) 色彩空間中的個別色頻。 這個列舉型別 (Enumeration) 是由 SetOutputChannel 方法所使用。

ColorMapType

指定色彩對應的型別。

ColorMatrixFlag

指定將受到 ImageAttributes 的色彩和灰階調整所影響的影像和色彩類型。

ColorMode

指定色彩元件值的兩種模式。

EmfPlusRecordType

指定與要讀取和寫入圖形指令的中繼檔 (Metafile) 一起使用的方法。

EmfType

指定放置在加強型中繼檔 (EMF) 中的記錄性質。 Metafile 類別中的數個建構函式會使用此列舉型別。

EncoderParameterValueType

指定搭配影像的 SaveSaveAdd 方法使用之 EncoderParameter 的資料類型。

EncoderValue

使用 Save(String, ImageCodecInfo, EncoderParameters)SaveAdd(EncoderParameters) 方法時,用於指定要傳遞至 JPEG 或 TIFF 影像編碼器的參數值。

ImageCodecFlags

提供影像編碼器/解碼器 (轉碼器) 的屬性。

ImageFlags

指定包含於 Image 物件中的像素資料屬性 (Attribute)。 Flags 屬性會傳回此列舉型別的成員。

ImageLockMode

指定傳遞至 LockBits 方法的旗標參數之旗標。 LockBits 方法會鎖定影像的部分,以便您可以讀取或寫入像素資料。

MetafileFrameUnit

指定用來調整中繼檔 (Metafile) 大小和位置的矩形度量單位。 這會在 Metafile 物件的建立期間加以指定。

MetafileType

指定中繼檔 (Metafile) 的類型。 Type 屬性會傳回此列舉型別的成員。

PaletteFlags

指定在系統調色盤 (Palette) 中色彩日期的型別。 資料可以是有 Alpha 值、僅灰階資料或半色調資料的色彩資料。

PixelFormat

指定影像中每個像素的色彩資料格式。

委派

PlayRecordCallback

不使用這個委派。 如需列舉中繼檔 (Metafile) 記錄的範例,請參閱 EnumerateMetafile(Metafile, Point, Graphics+EnumerateMetafileProc)

備註

警告

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。

Metafile類別提供記錄和儲存中繼檔的方法。 Encoder類別可讓使用者擴充 GDI+,以支援任何影像格式。 PropertyItem類別提供在影像檔案中儲存和取得中繼資料的方法。

警告

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

另請參閱