Desenhando, posicionando e clonando imagens no GDI+

Você pode usar a classe para carregar e exibir imagens raster, e você pode usar a BitmapMetafile classe para carregar e exibir imagens vetoriais. As Bitmap classes e Metafile herdam da Image classe. Para exibir uma imagem vetorial, você precisa de uma instância da Graphics classe e um Metafilearquivo . Para exibir uma imagem raster, você precisa de uma instância da Graphics classe e um Bitmaparquivo . A instância da Graphics classe fornece o método, que recebe o DrawImageMetafile ou Bitmap como um argumento.

Tipos de arquivo e clonagem

O exemplo de código a seguir mostra como construir um Bitmap a partir do arquivo Climber.jpg e exibe o bitmap. O ponto de destino para o canto superior esquerdo da imagem, (10, 10), especificado no segundo e terceiro parâmetros.

Bitmap myBitmap = new Bitmap("Climber.jpg");
myGraphics.DrawImage(myBitmap, 10, 10);
Dim myBitmap As New Bitmap("Climber.jpg")
myGraphics.DrawImage(myBitmap, 10, 10)

A ilustração a seguir mostra a imagem.

Image Sample

Você pode construir Bitmap objetos a partir de uma variedade de formatos de arquivos gráficos: BMP, GIF, JPEG, EXIF, PNG, TIFF e ICON.

O exemplo de código a seguir mostra como construir Bitmap objetos de uma variedade de tipos de arquivo e, em seguida, exibe os bitmaps.

Bitmap myBMP = new Bitmap("SpaceCadet.bmp");
Bitmap myGIF = new Bitmap("Soda.gif");
Bitmap myJPEG = new Bitmap("Mango.jpg");
Bitmap myPNG = new Bitmap("Flowers.png");
Bitmap myTIFF = new Bitmap("MS.tif");

myGraphics.DrawImage(myBMP, 10, 10);
myGraphics.DrawImage(myGIF, 220, 10);
myGraphics.DrawImage(myJPEG, 280, 10);
myGraphics.DrawImage(myPNG, 150, 200);
myGraphics.DrawImage(myTIFF, 300, 200);
Dim myBMP As New Bitmap("SpaceCadet.bmp")
Dim myGIF As New Bitmap("Soda.gif")
Dim myJPEG As New Bitmap("Mango.jpg")
Dim myPNG As New Bitmap("Flowers.png")
Dim myTIFF As New Bitmap("MS.tif")

myGraphics.DrawImage(myBMP, 10, 10)
myGraphics.DrawImage(myGIF, 220, 10)
myGraphics.DrawImage(myJPEG, 280, 10)
myGraphics.DrawImage(myPNG, 150, 200)
myGraphics.DrawImage(myTIFF, 300, 200)

A Bitmap classe fornece um método que você pode usar para fazer uma cópia de um CloneBitmaparquivo . O Clone método tem um parâmetro de retângulo de origem que você pode usar para especificar a parte do bitmap original que você deseja copiar. O exemplo de código a seguir mostra como criar um clonando a metade superior de um BitmapBitmaparquivo . As duas imagens são desenhadas.

Bitmap originalBitmap = new Bitmap("Spiral.png");
Rectangle sourceRectangle = new Rectangle(0, 0, originalBitmap.Width,
   originalBitmap.Height / 2);

Bitmap secondBitmap = originalBitmap.Clone(sourceRectangle,
   PixelFormat.DontCare);

myGraphics.DrawImage(originalBitmap, 10, 10);
myGraphics.DrawImage(secondBitmap, 150, 10);
Dim originalBitmap As New Bitmap("Spiral.png")
Dim sourceRectangle As New Rectangle(0, 0, originalBitmap.Width, _
   CType(originalBitmap.Height / 2, Integer))

Dim secondBitmap As Bitmap = originalBitmap.Clone(sourceRectangle, _
   PixelFormat.DontCare)

myGraphics.DrawImage(originalBitmap, 10, 10)
myGraphics.DrawImage(secondBitmap, 150, 10)

A ilustração a seguir mostra as duas imagens.

Cropping

Confira também