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

Предоставляет расширенные двухмерные и векторные графические функции.

Классы

Имя Описание
AdjustableArrowCap

Представляет настраиваемую крышку линии со стрелками. Этот класс не наследуется.

Blend

Определяет шаблон смешения для LinearGradientBrush объекта. Этот класс не наследуется.

ColorBlend

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

CustomLineCap

Инкапсулирует настраиваемую пользовательскую крышку строки.

GraphicsContainer

Представляет внутренние данные графического контейнера. Этот класс используется при сохранении Graphics состояния объекта с помощью BeginContainer() методов и 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, примененного в методе Warp.

WrapMode

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

Комментарии

Предостережение

Пространство 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.

В следующей таблице перечислены некоторые важные классы и перечисления в System.Drawing.Drawing2D пространстве имен, сгруппированные в категории.

Категория классов Details
— графические и графические пути Сведения GraphicsState о текущем GraphicsContainer объекте и Graphics классах. GraphicsPath классы представляют ряд линий и кривых. GraphicsPathIterator Классы PathData предоставляют подробные сведения о содержимом GraphicsPath объекта.
— Матрица и связанные типы преобразования Класс Matrix представляет матрицу для геометрических преобразований. Перечисление MatrixOrder задает порядок преобразований матриц.
— Классы кисти Классы PathGradientBrush позволяют HatchBrush заполнять фигуры либо градиентом, либо шаблоном хэтча соответственно.
— перечисление, связанное с строками LineCap Перечисления CustomLineCap позволяют указать стили крышки для строки. LineJoin Перечисление позволяет указать, как две строки объединяются в пути. Перечисление PenAlignment позволяет указать выравнивание подсказки рисования при рисовании линии. Перечисление PenType указывает шаблон, с которым должна быть заполнена строка.
— Перечисления, связанные с заполнением фигур и путей Перечисление HatchStyle задает стили заливки для .HatchBrush Класс Blend задает шаблон смешения для .LinearGradientBrush Перечисление FillMode задает стиль заливки для .GraphicsPath

Предостережение

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

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