System.Drawing.Imaging Пространство имен

Предоставляет расширенные графические функции GDI+. Базовые графические средства реализованы в пространстве имен System.Drawing.

Классы

BitmapData

Задает атрибуты точечного рисунка. Класс BitmapData используется методами LockBits и UnlockBits(BitmapData) класса Bitmap. Не наследуется.

CachedBitmap

Представляет зависимую от устройства копию объекта , Bitmap соответствующую текущим параметрам устройства (дисплея) указанного Graphics объекта. Избегает переформатирования шага при отрисовке, что может значительно повысить производительность.

ColorMap

Определяет карту для преобразования цветов. Несколько методов класса ImageAttributes позволяют настроить цвета изображения с помощью таблицы преобразования цветов, которая представляет собой массив структур ColorMap. Не наследуется.

ColorMatrix

Определяет матрицу 5 x 5, которая содержит координаты для пространства RGBAW. Несколько методов класса ImageAttributes настраивают цвета изображения с помощью цветовой матрицы. Этот класс не наследуется.

ColorPalette

Определяет массив цветов, образующий цветовую палитру. Цвета — это 32-разрядные цвета ARGB. Не наследуется.

Encoder

Объект Encoder инкапсулирует глобальный уникальный идентификатор GUID, который определяет категорию параметра кодировщика изображения.

EncoderParameter

Используется для передачи значения или массива значений кодировщику изображений.

EncoderParameters

Инкапсулирует массив объектов EncoderParameter.

FrameDimension

Предоставляет свойства, получающие размеры кадра изображения. Не наследуется.

ImageAttributes

Содержит сведения о том, каким образом обрабатываются цвета точечных рисунков и метафайлов во время отрисовки.

ImageCodecInfo

Класс ImageCodecInfo обеспечивает необходимые члены и методы хранения для извлечения всей информации, имеющей отношение к установленным кодировщикам и декодерам изображений (называются кодеками). Не наследуется.

ImageFormat

Указывает формат файла изображения. Не наследуется.

Metafile

Определяет графический метафайл. Метафайл содержит записи, описывающие последовательность графических операций, которые могут быть записаны (созданы) и воспроизведены (выведены на экран). Этот класс не наследуется.

MetafileHeader

Содержит атрибуты связанного объекта Metafile. Не наследуется.

MetaHeader

Содержит информацию о метафайле WMF.

PropertyItem

Инкапсулирует свойство метаданных, включаемое в файл изображения. Не наследуется.

WmfPlaceableFileHeader

Определяет размещаемый метафайл. Не наследуется.

Перечисления

ColorAdjustType

Указывает, какие объекты GDI+ используют сведения о настройке цвета.

ColorChannelFlag

Определяет отдельные каналы в цветовом пространстве CMYK (голубой, пурпурный, желтый, черный). Это перечисление используется методами SetOutputChannel.

ColorMapType

Определяет типы карт цветов.

ColorMatrixFlag

Определяет типы изображений и цвета, на которые влияют параметры настройки цветной или черно-белой палитры объекта ImageAttributes.

ColorMode

Определяет два режима для значений составляющих цвета.

DitherType

Предоставляет расширенные графические функции GDI+. Базовые графические средства реализованы в пространстве имен System.Drawing.

EmfPlusRecordType

Определяет методы, доступные для использования с метафайлом для чтения и записи графических команд.

EmfType

Определяет характер записей, размещенных в файле EMF (расширенный метафайл). Перечисление, используемое несколькими конструкторами в классе Metafile.

EncoderParameterValueType

Указывает тип данных EncoderParameter (используется с методом Save или SaveAdd изображения).

EncoderValue

Используется для определения значения параметра, передаваемого кодировщику изображений JPEG или TIFF при использовании методов Save(String, ImageCodecInfo, EncoderParameters) или SaveAdd(EncoderParameters).

ImageCodecFlags

Предоставляет атрибуты кодировщика или декодера изображения (кодека).

ImageFlags

Указывает атрибуты данных о пикселях, содержащихся в объекте Image. Свойство Flags возвращает члена данного перечисления.

ImageLockMode

Указывает флаги, передаваемые параметру флагов метода LockBits. Метод LockBits блокирует часть изображения, так что можно считывать или записывать данные о пикселях.

MetafileFrameUnit

Указывает единицу измерения прямоугольника, используемого для определения размеров и положения метафайлов. Эти данные указываются во время создания объекта Metafile.

MetafileType

Указывает типы метафайлов. Свойство Type возвращает члена данного перечисления.

PaletteFlags

Указывает тип данных о цвете в системной палитре. Это могут быть данные о цвете с альфа-составляющей, только черно-белые данные или полутоновые данные.

PaletteType

Предоставляет расширенные графические функции GDI+. Базовые графические средства реализованы в пространстве имен System.Drawing.

PixelFormat

Указывает формат данных о цвете для каждого пикселя изображения.

Делегаты

PlayRecordCallback

Данный делегат не используется. Пример перечисления записей метафайла см. в EnumerateMetafile(Metafile, Point, Graphics+EnumerateMetafileProc).

Комментарии

Внимание!

Пространство System.Drawing имен имеет некоторые ограничения для определенных операционных систем и типов приложений.

  • В Windows System.Drawing зависит от собственной библиотеки GDI+, которая поставляется в составе ОС. Некоторые номера SKU Windows, такие как Windows Server Core или Windows Nano, не включают эту собственную библиотеку в составе операционной системы. Если вы используете это пространство имен и библиотеку не удается загрузить, во время выполнения будут возникать исключения.

  • Некоторые типы в System.Drawing пространстве имен используют GDI+, который не поддерживается в службах Windows, а также ASP.NET Core и ASP.NET приложениях. Эти типы находятся в пакете NuGet System.Drawing.Common и включают System.Drawing.Bitmap и System.Drawing.Font. Однако примитивные типы в пространстве имен, такие как System.Drawing.Color, System.Drawing.Size, System.Drawing.Pointи System.Drawing.Rectangle, можно использовать в любом приложении.

  • В .NET 5 и предыдущих версиях пакет NuGet System.Drawing.Common работает в Windows, Linux и macOS. Однако существуют некоторые различия между платформами. В Linux и macOS функциональность GDI+ реализуется библиотекой libgdiplus). Эта библиотека не устанавливается по умолчанию в большинстве дистрибутивов Linux и не поддерживает все функции GDI+ в Windows и macOS. Существуют также платформы, где libgdiplus недоступен вообще. Чтобы использовать типы из пакета System.Drawing.Common в Linux и macOS, необходимо установить libgdiplus отдельно. Дополнительные сведения см. в разделах Установка .NET в Linux или Установка .NET в macOS.

  • В .NET 6 и более поздних версиях пакет NuGet System.Drawing.Common поддерживается только в операционных системах Windows. Дополнительные сведения см . в статье System.Drawing.Common, поддерживаемая только в Windows.

Если вы не можете использовать System.Drawing с приложением, рекомендуемые варианты: ImageSharp, SkiaSharp, Компоненты образов Windows и Microsoft.Maui.Graphics.

Класс Metafile предоставляет методы для записи и сохранения метафайлов. Класс Encoder позволяет пользователям расширить GDI+ для поддержки любого формата изображений. Класс PropertyItem предоставляет методы для хранения и извлечения метаданных в файлах изображений.

Внимание!

Классы в System.Drawing.Imaging пространстве имен не поддерживаются для использования в службе Windows или ASP.NET. Попытка использовать эти классы в одном из этих типов приложений может привести к непредвиденным проблемам, таким как снижение производительности службы и исключения во время выполнения.

См. также раздел