Desenhar formas em Java

Em certos casos, pode ser necessário criar objetos diferentes desenhando formas como círculos, linhas, retângulos, etc. Além disso, pode ser necessário desenhar essas formas em imagens para anotação. Neste artigo, você aprenderá a desenhar formas programaticamente em Java. Particularmente, você aprenderá a desenhar linhas, elipses, arcos e retângulos e gerar suas imagens.

API Java para desenhar formas - Download grátis

Para desenhar as formas e gerar as imagens de saída, usaremos Aspose.Imaging for Java. É uma poderosa API de edição de imagens que fornece uma ampla gama de recursos para manipular imagens e criar desenhos. Você pode baixar a API ou instalá-la usando as seguintes configurações do Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>22.9</version>
</dependency>

Desenhe uma linha usando Java

A seguir estão as etapas para desenhar uma linha em Java.

O exemplo de código a seguir mostra como desenhar uma linha em Java.

// Criar BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Defina a propriedade de origem para a instância de BmpOptions
bmpCreateOptions.setSource(new StreamSource());

// Cria uma instância de Image e chama o método create passando o
// objeto bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 500, 500);

// Criar e inicializar uma instância da classe Graphics
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Limpe a superfície da imagem com a cor branca
graphic.clear(com.aspose.imaging.Color.getWhite());

// Desenhe uma linha pontilhada especificando o objeto Caneta com cor azul e
// pontos coordenados
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 18, 200, 200);
graphic.drawLine(new Pen(com.aspose.imaging.Color.getBlue(), 3), 18, 200, 200, 18);

// Desenhe uma linha contínua especificando o objeto Pen com Solid
// Pincel com cor vermelha e estruturas de dois pontos
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getRed()), 3),
		new com.aspose.imaging.Point(18, 18), new com.aspose.imaging.Point(18, 200));

// Desenhe uma linha contínua especificando o objeto Pen com Solid
// Pincel com cor branca e estruturas de dois pontos
graphic.drawLine(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getOrange()), 3),
		new com.aspose.imaging.Point(200, 18), new com.aspose.imaging.Point(18, 18));

// Salvar todas as alterações
image.save("draw_lines.bmp");

A seguir está a saída do exemplo de código acima.

desenhar linha em Java

Desenhe uma elipse usando Java

A seguir estão as etapas para desenhar uma elipse em Java.

O exemplo de código a seguir mostra como desenhar uma elipse em uma imagem em Java.

// Criar BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Defina a propriedade de origem para a instância de BmpOptions
bmpCreateOptions.setSource(new StreamSource());

// Cria uma instância de Image e chama o método create passando o
// objeto bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Criar e inicializar uma instância da classe Graphics
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Limpe a superfície da imagem com a cor branca
graphic.clear(com.aspose.imaging.Color.getWhite());

// Desenhe uma forma de elipse pontilhada especificando o objeto Caneta com
// cor e um retângulo circundante
graphic.drawEllipse(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// Desenhe uma forma de elipse contínua especificando o objeto Caneta com
// solid brush with blue cor e um retângulo circundante
graphic.drawEllipse(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// Salvar todas as alterações
image.save("draw_ellipse.bmp");

A seguir está a saída do exemplo de código acima.

desenhar elipse em Java

Desenhe um arco usando Java

A seguir estão as etapas para desenhar um arco em Java.

O exemplo de código a seguir mostra como desenhar um arco em uma imagem em Java.

// Criar BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Defina a propriedade de origem para a instância de BmpOptions
bmpCreateOptions.setSource(new StreamSource());

// Cria uma instância de Image e chama o método Create passando o
// Objeto BmpOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Criar e inicializar uma instância da classe Graphics
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Limpe a superfície da imagem com a cor branca
graphic.clear(com.aspose.imaging.Color.getWhite());

// Desenhe uma forma de arco pontilhada especificando o objeto Caneta com vermelho preto
// cor e coordenadas, altura, largura, ângulos inicial e final
int width = 200;
int height = 300;
int startAngle = 45;
int sweepAngle = 270;

// Desenhar arco para tela
graphic.drawArc(new Pen(com.aspose.imaging.Color.getBlack(), 3), 0, 0, width, height, startAngle, sweepAngle);

// Salvar todas as alterações
image.save("draw_arc.bmp");

A seguir está a saída do exemplo de código acima.

desenhar arco em Java

Desenhe um retângulo usando Java

A seguir estão as etapas para desenhar um retângulo em Java.

O exemplo de código a seguir mostra como desenhar um retângulo em uma imagem em Java.

// Criar BmpOptions
com.aspose.imaging.imageoptions.BmpOptions bmpCreateOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpCreateOptions.setBitsPerPixel(32);

// Defina a propriedade de origem para a instância de BmpOptions
bmpCreateOptions.setSource(new StreamSource());

// Cria uma instância de Image e chama o método Create passando o
// objeto bmpCreateOptions
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpCreateOptions, 400, 400);

// Criar e inicializar uma instância da classe Graphics
com.aspose.imaging.Graphics graphic = new com.aspose.imaging.Graphics(image);

// Limpe a superfície da imagem com a cor branca
graphic.clear(com.aspose.imaging.Color.getWhite());

// Desenhe uma forma retangular pontilhada especificando o objeto Caneta com
// cor e uma estrutura retangular
graphic.drawRectangle(new Pen(com.aspose.imaging.Color.getRed(), 3),
		new com.aspose.imaging.Rectangle(60, 40, 70, 120));

// Desenhe uma forma retangular contínua especificando o objeto Caneta com
// solid brush with blue cor e uma estrutura retangular
graphic.drawRectangle(new Pen(new com.aspose.imaging.brushes.SolidBrush(com.aspose.imaging.Color.getBlue()), 3),
		new com.aspose.imaging.Rectangle(40, 60, 120, 70));

// Salvar todas as alterações
image.save("draw_rectangle.bmp");

A seguir está a saída do exemplo de código acima.

desenhar retângulo em Java

Java Image Drawing API - Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita e desenhar formas sem limitações de avaliação.

Conclusão

Neste artigo, você aprendeu como desenhar formas em Java. Cobrimos como desenhar linhas, elipses, arcos e retângulos em imagens programaticamente. Você pode integrar facilmente os exemplos de código fornecidos em seus aplicativos Java.

consulte Mais informação

Você pode explorar mais sobre a API de processamento de imagem Java usando documentação. Além disso, você pode compartilhar suas dúvidas conosco através do nosso fórum.

Veja também