Como: Preencher uma forma com uma textura de imagem
Você pode preencher uma forma fechada com uma textura, usando o Image classe e o TextureBrush classe.
Exemplo
O exemplo seguinte preenche uma elipse com uma imagem.O código constrói um Image objeto e, em seguida, passa o endereço do que Image objeto sistema autônomo um argumento para um TextureBrush construtor. A terceira demonstrativo dimensiona a imagem e a quarta demonstrativo preenche a elipse com cópias repetidas da imagem em escala.
O código a seguir, a Transform propriedade contém a transformação que é aplicada à imagem antes de ser desenhada. Suponha que a imagem original tem uma largura de 640 pixels e uma altura de 480 pixels.A transformação reduz a imagem para 75 x 75 por configuração os valores de escala horizontais e verticais.
Observação: |
---|
No exemplo a seguir, o dimensionar da imagem é de 75 x 75 e o dimensionar da elipse é 150 × 250.Como a imagem é menor do que a elipse que está preenchendo, elipse é disposta lado a lado com a imagem.Tiling significa que a imagem é repetida horizontal e verticalmente até o limite da forma for atingido.Para obter mais informações sobre a disposição lado a lado, consulte Como: Uma forma com uma imagem de xadrez. |
Dim image As New Bitmap("ImageFile.jpg")
Dim tBrush As New TextureBrush(image)
tBrush.Transform = New Matrix( _
75.0F / 640.0F, _
0.0F, _
0.0F, _
75.0F / 480.0F, _
0.0F, _
0.0F)
e.Graphics.FillEllipse(tBrush, New Rectangle(0, 150, 150, 250))
Image image = new Bitmap("ImageFile.jpg");
TextureBrush tBrush = new TextureBrush(image);
tBrush.Transform = new Matrix(
75.0f / 640.0f,
0.0f,
0.0f,
75.0f / 480.0f,
0.0f,
0.0f);
e.Graphics.FillEllipse(tBrush, new Rectangle(0, 150, 150, 250));
Compilando o código
The preceding example is designed for use with Windows Forms, and it requires PaintEventArgs e, which is a parameter of the Paint event handler.