Como: Criar objetos gráficos para desenho
Antes de você pode desenhar linhas e formas, processamento de texto, ou exibir e manipular imagens com GDI+, você precisará criar um Graphics objeto. O Graphics objeto representa uma GDI+ de desenho de superfície, e é o objeto que é usado para criar imagens gráficas.
Há duas etapas para trabalhar com elementos gráficos:
Criando um Graphics objeto.
Usando o Graphics o objeto para desenhar linhas e formas, processamento de texto, ou exibir e manipular imagens.
Criando um objeto Graphics
Um objeto graphics pode ser criado em uma variedade de formas.
Para criar um objeto graphics
Receber uma referência a um objeto graphics como parte do PaintEventArgs na Paint o evento de um formulário ou controle. Geralmente, isso é como obter uma referência a um objeto graphics ao criar o código de pintura para um controle. Da mesma forma, você também pode obter um objeto graphics como uma propriedade da PrintPageEventArgs quando estiver manipulando o PrintPage evento para um PrintDocument.
- ou -
Chamar o CreateGraphics o método de um controle ou formulário para obter uma referência a um Graphics objeto que representa a superfície de desenho desse controle ou formulário. Use este método se você deseja desenhar em um formulário ou controle que já existe.
- ou -
Criar um Graphics o objeto de qualquer objeto que herda de Image. Essa abordagem é útil quando você quiser alterar uma imagem já existente.
As seções a seguir fornecem detalhes sobre cada um desses processos.
PaintEventArgs no manipulador de eventos de pintura
Ao programar o PaintEventHandler para controles ou a PrintPage para um PrintDocument, um objeto gráfico é fornecido como uma das propriedades de PaintEventArgs ou PrintPageEventArgs.
Para obter uma referência a um objeto Graphics a partir do PaintEventArgs no evento Paint
Declarar o Graphics objeto.
Atribuir a variável para referir-se a Graphics objeto passado como parte do PaintEventArgs.
Insira o código para pintar o formulário ou controle.
O exemplo a seguir mostra como fazer referência a uma Graphics de objeto da PaintEventArgs na Paint evento:
Private Sub Form1_Paint(sender As Object, pe As PaintEventArgs) Handles _ MyBase.Paint ' Declares the Graphics object and sets it to the Graphics object ' supplied in the PaintEventArgs. Dim g As Graphics = pe.Graphics ' Insert code to paint the form here. End Sub
private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs pe) { // Declares the Graphics object and sets it to the Graphics object // supplied in the PaintEventArgs. Graphics g = pe.Graphics; // Insert code to paint the form here. }
private: void Form1_Paint(System::Object ^ sender, System::Windows::Forms::PaintEventArgs ^ pe) { // Declares the Graphics object and sets it to the Graphics object // supplied in the PaintEventArgs. Graphics ^ g = pe->Graphics; // Insert code to paint the form here. }
Método CreateGraphics
Você também pode usar o CreateGraphics o método de um controle ou formulário para obter uma referência a um Graphics objeto que representa a superfície de desenho desse controle ou formulário.
Para criar um objeto Graphics com o método CreateGraphics
Chamar o CreateGraphics o método do formulário ou controle no qual você deseja processar elementos gráficos.
Dim g as Graphics ' Sets g to a Graphics object representing the drawing surface of the ' control or form g is a member of. g = Me.CreateGraphics
Graphics g; // Sets g to a graphics object representing the drawing surface of the // control or form g is a member of. g = this.CreateGraphics();
Graphics ^ g; // Sets g to a graphics object representing the drawing surface of the // control or form g is a member of. g = this->CreateGraphics();
Criar a partir de um objeto de imagem
Além disso, você pode criar um objeto graphics a partir de qualquer objeto que deriva do Image classe.
Para criar um objeto Graphics a partir de uma imagem
Chamar o Graphics.FromImage método, fornecendo o nome da variável de imagem que você deseja criar um Graphics objeto.
O exemplo a seguir mostra como usar um Bitmap objeto:
Dim myBitmap as New Bitmap("C:\Documents and Settings\Joe\Pics\myPic.bmp") Dim g as Graphics = Graphics.FromImage(myBitmap)
Bitmap myBitmap = new Bitmap(@"C:\Documents and Settings\Joe\Pics\myPic.bmp"); Graphics g = Graphics.FromImage(myBitmap);
Bitmap ^ myBitmap = gcnew Bitmap("D:\\Documents and Settings\\Joe\\Pics\\myPic.bmp"); Graphics ^ g = Graphics::FromImage(myBitmap);
Observação |
---|
Você só pode criar Graphics objetos a partir de arquivos BMP não indexados, como todos os arquivos. bmp de 16 bits, 24 bits e 32 bits. Cada pixel de BMP não indexados mantém uma cor, em contraste com pixels de arquivos BMP indexado, que mantêm um índice para uma tabela de cores. |
Desenho e manipulação de imagens e formas
Depois de criado, um Graphics objeto pode ser usado para desenhar linhas e formas, processamento de texto, ou exibir e manipular imagens. Os principais objetos que são usados com o Graphics objeto são:
O Pen classe — usado para desenhar linhas, formas de estrutura de tópicos ou processamento de outras representações geométricas.
O Brush classe — usado para preencher as áreas de elementos gráficos, como, por exemplo, as formas preenchidas, imagens ou texto.
O Font classe — fornece uma descrição de quais formas para usar ao processamento de texto.
O Color estrutura — representa as cores diferentes para exibição.
Para usar o objeto de elementos gráficos que você criou
Trabalhar com o objeto apropriado listado acima para desenhar o que você precisa.
Para obter mais informações, consulte os seguintes tópicos:
Para processar
Consulte
Linhas
Shapes
Texto
Imagens
Consulte também
Tarefas
Como: Processar imagens com GDI+
Outros recursos
Introdução à programação de gráficos