Partilhar via


As três partes do GDI+

Os serviços do Windows GDI+ se enquadram nas três categorias mais amplas a seguir:

gráfico vetorial 2D

Os elementos gráficos vetoriais envolvem primitivos de desenho (como linhas, curvas e figuras) especificados por conjuntos de pontos em um sistema de coordenadas. Por exemplo, uma linha reta pode ser especificada por seus dois pontos de extremidade, e um retângulo pode ser especificado por um ponto que fornece a localização de seu canto superior esquerdo e um par de números que dão sua largura e altura. Um caminho simples pode ser especificado por uma matriz de pontos a serem conectados por linhas retas. Uma spline de Bézier é uma curva sofisticada especificada por quatro pontos de controle.

O GDI+ fornece classes que armazenam informações sobre os primitivos em si, classes que armazenam informações sobre como os primitivos devem ser desenhados e classes que realmente fazem o desenho. Por exemplo, a classe Rect armazena o local e o tamanho de um retângulo; a classe Caneta armazena informações sobre cor da linha, largura da linha e estilo de linha; e a classe Graphics tem métodos para desenhar linhas, retângulos, caminhos e outras figuras. Há também várias classes brush que armazenam informações sobre como figuras e caminhos fechados devem ser preenchidos com cores ou padrões.

Geração de imagens

Determinados tipos de imagens são difíceis ou impossíveis de exibir com as técnicas de gráficos vetoriais. Por exemplo, as imagens nos botões da barra de ferramentas e as imagens que aparecem como ícones seriam difíceis de especificar como coleções de linhas e curvas. Uma fotografia digital de alta resolução de um estádio de beisebol lotado seria ainda mais difícil de criar com técnicas de vetor. As imagens desse tipo são armazenadas como bitmaps, matrizes de números que representam as cores de ponto individuais na tela. As estruturas de dados que armazenam informações sobre bitmaps tendem a ser mais complexas do que as necessárias para elementos gráficos vetoriais, portanto, há várias classes no GDI+ dedicadas a essa finalidade. Um exemplo dessa classe é CachedBitmap, que é usado para armazenar um bitmap na memória para acesso rápido e exibição.

Tipografia

A tipografia está preocupada com a exibição de texto em uma variedade de fontes, tamanhos e estilos. O GDI+ fornece uma quantidade impressionante de suporte para essa tarefa complexa. Um dos novos recursos no GDI+ é a suavização de subpixel, que dá ao texto renderizado em uma tela LCD uma aparência mais suave.