System.Drawing.Drawing2D Espaço de Nomes

Oferece funcionalidades avançadas de gráficos bidimensionais e vetoriais.

Classes

Name Description
AdjustableArrowCap

Representa uma tampa de linha ajustável em forma de seta. Esta classe não pode ser herdada.

Blend

Define um padrão de mistura para um LinearGradientBrush objeto. Esta classe não pode ser herdada.

ColorBlend

Define arrays de cores e posições usados para interpolar a mistura de cores num gradiente multicolorido. Esta classe não pode ser herdada.

CustomLineCap

Encapsula um limite de linha personalizado definido pelo utilizador.

GraphicsContainer

Representa os dados internos de um contentor gráfico. Esta classe é usada ao guardar o estado de um Graphics objeto usando os BeginContainer() métodos e.EndContainer(GraphicsContainer) Esta classe não pode ser herdada.

GraphicsPath

Representa uma série de linhas e curvas ligadas. Esta classe não pode ser herdada.

GraphicsPathIterator

Proporciona a capacidade de iterar através de subcaminhos e GraphicsPath testar os tipos de formas contidas em cada subcaminho. Esta classe não pode ser herdada.

GraphicsState

Representa o estado de um Graphics objeto. Este objeto é devolvido por uma chamada aos Save() métodos. Esta classe não pode ser herdada.

HatchBrush

Define um pincel retangular com um estilo de hachura, uma cor de primeiro plano e uma cor de fundo. Esta classe não pode ser herdada.

LinearGradientBrush

Encapsula a Brush com um gradiente linear. Esta classe não pode ser herdada.

Matrix

Encapsula uma matriz afim 3 por 3 que representa uma transformada geométrica. Esta classe não pode ser herdada.

PathData

Contém os dados gráficos que compõem um GraphicsPath objeto. Esta classe não pode ser herdada.

PathGradientBrush

Encapsula um Brush objeto que preenche o interior de um GraphicsPath objeto com um gradiente. Esta classe não pode ser herdada.

RegionData

Encapsula os dados que compõem um Region objeto. Esta classe não pode ser herdada.

Enumerações

Name Description
CombineMode

Especifica como diferentes regiões de clipping podem ser combinadas.

CompositingMode

Especifica como as cores de origem são combinadas com as cores de fundo.

CompositingQuality

Especifica o nível de qualidade a usar durante a composição.

CoordinateSpace

Especifica o sistema a usar na avaliação de coordenadas.

DashCap

Especifica o tipo de forma gráfica a usar em ambas as extremidades de cada traço numa linha tracejada.

DashStyle

Especifica o estilo das linhas tracejadas desenhadas com um Pen objeto.

FillMode

Especifica como o interior de um caminho fechado é preenchido.

FlushIntention

Especifica se os comandos na pilha gráfica são terminados imediatamente ou executados o mais rapidamente possível.

HatchStyle

Especifica os diferentes padrões disponíveis para HatchBrush os objetos.

InterpolationMode

A InterpolationMode enumeração especifica o algoritmo utilizado quando as imagens são escaladas ou rodadas.

LinearGradientMode

Especifica a direção de um gradiente linear.

LineCap

Especifica os estilos de capas disponíveis com os quais um Pen objeto pode terminar uma linha.

LineJoin

Especifica como unir segmentos consecutivos de linha ou curva numa figura (subcaminho) contida num GraphicsPath objeto.

MatrixOrder

Especifica a ordem para operações de transformada matricial.

PathPointType

Especifica o tipo de ponto num GraphicsPath objeto.

PenAlignment

Especifica o alinhamento de um Pen objeto em relação à linha teórica de largura zero.

PenType

Especifica o tipo de preenchimento que um Pen objeto usa para preencher linhas.

PixelOffsetMode

Especifica como os píxeis são deslocados durante a renderização.

QualityMode

Especifica a qualidade global ao renderizar objetos GDI+.

SmoothingMode

Especifica se o suavizamento (antialiasing) é aplicado a linhas e curvas e às arestas de áreas preenchidas.

WarpMode

Especifica o tipo de transformação de dobra aplicada num Warp método.

WrapMode

Especifica como uma textura ou gradiente é tilado quando é menor do que a área a preencher.

Observações

Atenção

O System.Drawing espaço de nomes apresenta algumas limitações para certos sistemas operativos e tipos de aplicação.

  • No Windows, System.Drawing depende da biblioteca nativa GDI+, que é incluída no sistema operativo. Alguns SKUs do Windows, como o Windows Server Core ou o Windows Nano, não incluem esta biblioteca nativa como parte do sistema operativo. Se usares este namespace e a biblioteca não puder ser carregada, as exceções serão lançadas em tempo de execução.

  • Alguns tipos no espaço de nomes System.Drawing dependem de GDI+, que não é suportado em serviços Windows nem em aplicações ASP.NET Core e ASP.NET. Estes tipos estão no pacote System.Drawing.Common NuGet e incluem System.Drawing.Bitmap e System.Drawing.Font. No entanto, tipos primitivos no namespace, como System.Drawing.Color, System.Drawing.Size, System.Drawing.Point, e System.Drawing.Rectangle, podem ser usados em qualquer aplicação.

  • No .NET 5 e versões anteriores, o pacote NuGet System.Drawing.Common funciona em Windows, Linux e macOS. No entanto, existem algumas diferenças nas plataformas. No Linux e macOS, a funcionalidade GDI+ é implementada pela biblioteca libgdiplus . Esta biblioteca não está instalada por defeito na maioria das distribuições Linux e não suporta toda a funcionalidade do GDI+ no Windows e macOS. Existem também plataformas onde o libgdiplus não está disponível de todo. Para usar tipos do pacote System.Drawing.Common no Linux e macOS, deve instalar o libgdiplus separadamente. Para mais informações, consulte Instalar .NET em Linux ou Instalar .NET no macOS.

  • Em versões .NET 6 e posteriores, o pacote NuGet System.Drawing.Common é suportado apenas em sistemas operativos Windows. Para obter mais informações, consulte System.Drawing.Common suportado apenas no Windows.

Se não puder usar System.Drawing com a sua aplicação, as alternativas recomendadas incluem ImageSharp, SkiaSharp, Windows Componentes de Imagem e Microsoft. Maui.Graphics.

A tabela seguinte lista algumas das classes e enumerações importantes no System.Drawing.Drawing2D espaço de nomes, agrupadas em categorias.

Categoria de classe Detalhes
- Gráficos e caminhos gráficos As GraphicsState classes e GraphicsContainer reportam informações sobre o objeto atual Graphics . GraphicsPath As classes representam uma série de linhas e curvas. As GraphicsPathIterator classes e PathData fornecem informações detalhadas sobre o conteúdo de um GraphicsPath objeto.
- Tipos relacionados com matrizes e transformações A Matrix classe representa uma matriz para transformadas geométricas. A MatrixOrder enumeração especifica a ordem para transformações matriciais.
- Classes de pincel As PathGradientBrush classes and HatchBrush permitem-te preencher formas com um padrão de gradiente ou de hachura, respetivamente.
- Enumeração relacionada com linhas As LineCap enumerações e CustomLineCap permitem-lhe especificar estilos de maiúsculas para uma linha. A enumeração LineJoin permite-lhe especificar como duas linhas estão unidas num caminho. A PenAlignment enumeração permite-lhe especificar o alinhamento da ponta de desenho ao desenhar uma linha. A PenType enumeração especifica o padrão com que uma linha deve ser preenchida.
- Enumerações relacionadas com formas e caminhos de preenchimento A HatchStyle enumeração especifica estilos de preenchimento para um HatchBrush. A Blend classe especifica um padrão de mistura para um LinearGradientBrush. A FillMode enumeração especifica o estilo de preenchimento para um GraphicsPath.

Atenção

As classes no espaço de nomes System.Drawing.Drawing2D não são suportadas para uso num serviço Windows ou ASP.NET. Tentar usar estas classes num destes tipos de aplicação pode produzir problemas inesperados, como desempenho de serviço diminuído e exceções em tempo de execução.

Ver também