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 |
Содержит сведения о метафайле формата Windows (WMF). |
| PropertyItem |
Инкапсулирует свойство метаданных для включения в файл изображения. Не наследуется. |
| WmfPlaceableFileHeader |
Определяет размещаемый метафайл. Не наследуется. |
Перечисления
| Имя | Описание |
|---|---|
| ColorAdjustType |
Указывает, какие объекты GDI+ используют сведения о настройке цвета. |
| ColorChannelFlag |
Задает отдельные каналы в цветовом пространстве CMYK (cyan, magenta, желтый, черный). Это перечисление используется методами SetOutputChannel. |
| ColorMapType |
Задает типы цветовых карт. |
| ColorMatrixFlag |
Указывает типы изображений и цветов, которые будут затронуты параметрами настройки цветов и серого шкалы ImageAttributes. |
| ColorMode |
Задает два режима для значений компонента цвета. |
| DitherType |
Указывает, как изображения dithered с уменьшенной цветовой палитрой. |
| 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 |
Задает типы цветовой палитры. |
| PixelFormat |
Задает формат цветовых данных для каждого пикселя на изображении. |
Делегаты
| Имя | Описание |
|---|---|
| PlayRecordCallback |
Этот делегат не используется. Пример перечисления записей метафайла см. в разделе EnumerateMetafile(Metafile, Point, Graphics+EnumerateMetafileProc). |
Комментарии
Предостережение
Пространство System.Drawing имен имеет некоторые ограничения для определенных операционных систем и типов приложений.
На Windows
System.Drawingзависит от собственной библиотеки GDI+, которая поставляется в составе ОС. Некоторые Windows номера SKU, такие как 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.SizeSystem.Drawing.Pointи System.Drawing.Rectangle, можно использовать в любом приложении.В .NET 5 и предыдущих версиях пакет NuGet < >System.Drawing.Common пакет NuGet работает на Windows, Linux и macOS. Однако существуют некоторые различия платформы. В Linux и macOS функция GDI+ реализована библиотекой libgdiplus . Эта библиотека не устанавливается по умолчанию в большинстве дистрибутивов Linux и не поддерживает все функции GDI+ в Windows и macOS. Существуют также платформы, где libgdiplus недоступен вообще. Чтобы использовать типы из пакета System.Drawing.Common в Linux и macOS, необходимо установить libgdiplus отдельно. Дополнительные сведения см. в статье Install .NET в Linux или Install .NET в macOS.
В .NET 6 и более поздних версиях пакет NuGet System.Drawing.Common пакет NuGet поддерживается только в операционных системах Windows. Дополнительные сведения см. в статье System.Drawing.Common, поддерживаемой только в Windows.
Если вы не можете использовать System.Drawing с приложением, Рекомендуемые варианты включают ImageSharp, SkiaSharp, Windows Компоненты визуализации и Microsoft. Maui.Graphics.
Класс Metafile предоставляет методы записи и сохранения метафайлов. Класс Encoder позволяет пользователям расширить GDI+ для поддержки любого формата изображения. Класс PropertyItem предоставляет методы для хранения и получения метаданных в файлах изображений.
Предостережение
Классы в пространстве имен System.Drawing.Imaging не поддерживаются для использования в Windows или службе ASP.NET. При попытке использовать эти классы из одного из этих типов приложений могут возникнуть непредвиденные проблемы, такие как снижение производительности службы и исключения во время выполнения.