System.Drawing.Imaging 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供高级 GDI+ 图像处理功能。 基本图形功能由 System.Drawing 命名空间提供。
类
BitmapData |
指定位图图像的特性。 BitmapData 类由 LockBits 类的 UnlockBits(BitmapData) 和 Bitmap 方法使用。 不可继承。 |
CachedBitmap |
表示与指定Graphics对象的当前设备匹配 (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 |
定义图形图元文件。 图元文件包含描述一系列图形操作的记录,这些操作可被记录(构造)和回放(显示)。 此类不能继承。 |
MetafileHeader |
包含关联的 Metafile 的特性。 不可继承。 |
MetaHeader |
包含有关 Windows 格式 (WMF) 图元文件的信息。 |
PropertyItem |
封装要包括到图像文件中的元数据属性。 不可继承。 |
WmfPlaceableFileHeader |
定义可放置的图元文件。 不可继承。 |
枚举
ColorAdjustType |
指定哪些 GDI+ 对象使用颜色调整信息。 |
ColorChannelFlag |
指定 CMYK(青色、洋红色、黄色、黑色)颜色空间中的个别通道。 此枚举由 SetOutputChannel 方法使用。 |
ColorMapType |
指定颜色映射的类型。 |
ColorMatrixFlag |
指定将受 ImageAttributes 的颜色和灰度调整设置影响的图像和颜色的类型。 |
ColorMode |
指定颜色分量值的两种模式。 |
DitherType |
提供高级 GDI+ 图像处理功能。 基本图形功能由 System.Drawing 命名空间提供。 |
EmfPlusRecordType |
指定可用于图元文件的读取和写入图形命令方法。 |
EmfType |
指定放置在增强图元文件 (EMF) 中的记录的性质。 此枚举由 Metafile 类中的几个构造函数使用。 |
EncoderParameterValueType |
指定与图像的 Save 或 SaveAdd 方法结合使用的 EncoderParameter 的数据类型。 |
EncoderValue |
用于指定在使用 Save(String, ImageCodecInfo, EncoderParameters) 或 SaveAdd(EncoderParameters) 方法时传递给 JPEG 或 TIFF 图像编码器的参数值。 |
ImageCodecFlags |
提供图像编码器/解码器(编码解码器)的特性。 |
ImageFlags | |
ImageLockMode |
指定传递给 LockBits 方法的标志参数的标志。 LockBits 方法可锁定图像的某一部分,以便读取或写入像素数据。 |
MetafileFrameUnit |
指定矩形的度量单位,该矩形用于调整图元文件的大小和位置。 这是在创建 Metafile 对象的过程中指定的。 |
MetafileType |
指定图元文件的类型。 Type 属性返回此枚举的成员。 |
PaletteFlags |
指定系统调色板中颜色数据的类型。 该数据可以是带有 alpha、仅灰度数据或半色调数据的颜色数据。 |
PaletteType |
提供高级 GDI+ 图像处理功能。 基本图形功能由 System.Drawing 命名空间提供。 |
PixelFormat |
指定图像中每个像素的颜色数据的格式。 |
委托
PlayRecordCallback |
未使用此委托。 有关枚举图元文件记录的示例,请参见 EnumerateMetafile(Metafile, Point, Graphics+EnumerateMetafileProc)。 |
注解
注意
命名空间 System.Drawing
对某些操作系统和应用程序类型有一些限制。
在 Windows 上,
System.Drawing
依赖于作为 OS 一部分提供的 GDI+ 本机库。 某些 Windows SKU(如 Windows Server Core 或 Windows Nano)不包括此本机库作为 OS 的一部分。 如果使用此命名空间并且无法加载库,则会在运行时引发异常。命名空间中的
System.Drawing
某些类型依赖于 GDI+,而 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 及更高版本中, System.Drawing.Common NuGet 包仅在 Windows 操作系统上受支持。 有关详细信息,请参阅 仅在 Windows 上支持 System.Drawing.Common。
如果无法与应用程序一起使用 System.Drawing
,建议的替代方案包括 ImageSharp、 SkiaSharp、 Windows Imaging Components 和 Microsoft.Maui.Graphics。
类 Metafile 提供用于记录和保存图元文件的方法。 类 Encoder 使用户能够扩展 GDI+ 以支持任何图像格式。 类 PropertyItem 提供用于在图像文件中存储和检索元数据的方法。
注意
命名空间中的 System.Drawing.Imaging 类不支持在 Windows 或 ASP.NET 服务中使用。 尝试从这些应用程序类型之一使用这些类可能会产生意外问题,例如服务性能降低和运行时异常。