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
- Desenhe uma linha usando Java
- Desenhe uma elipse usando Java
- Desenhando um arco usando Java
- Desenhe um retângulo usando Java
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.
- Primeiro, crie um objeto da classe BmpOptions e defina bits por pixel usando o método setBitsPerPixel().
- Em seguida, atribua StreamSource usando o método setSource().
- Crie uma nova imagem e inicialize-a com o objeto BmpOptions e a altura e largura da imagem.
- Crie um objeto da classe Graphics e inicialize-o com o objeto Image.
- Limpe a superfície da imagem com alguma cor usando o método Graphics.clear().
- Desenhe uma linha usando o método Graphics.drawLine(Pen, int, int, int, int).
- Gere e salve a imagem usando o método Image.save().
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.
Desenhe uma elipse usando Java
A seguir estão as etapas para desenhar uma elipse em Java.
- Primeiro, crie um objeto da classe BmpOptions e defina bits por pixel usando o método setBitsPerPixel().
- Em seguida, atribua StreamSource usando o método setSource().
- Crie uma nova imagem e inicialize-a com o objeto BmpOptions e a altura e largura da imagem.
- Crie um objeto da classe Graphics e inicialize-o com o objeto Image.
- Limpe a superfície da imagem com alguma cor usando o método Graphics.clear().
- Desenhe uma elipse usando o método Graphics.drawEllipse(Pen, Rectangle).
- Gere e salve a imagem usando o método Image.save().
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.
Desenhe um arco usando Java
A seguir estão as etapas para desenhar um arco em Java.
- Primeiro, crie um objeto da classe BmpOptions e defina bits por pixel usando o método setBitsPerPixel().
- Em seguida, atribua StreamSource usando o método setSource().
- Crie uma nova imagem e inicialize-a com o objeto BmpOptions e a altura e largura da imagem.
- Crie um objeto da classe Graphics e inicialize-o com o objeto Image.
- Limpe a superfície da imagem com alguma cor usando o método Graphics.clear().
- Desenhe um arco usando o método Graphics.drawArc(Pen, float x, float y, float width, float height, float startAngle, float sweepAngle).
- Gere e salve a imagem usando o método Image.save().
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.
Desenhe um retângulo usando Java
A seguir estão as etapas para desenhar um retângulo em Java.
- Primeiro, crie um objeto da classe BmpOptions e defina bits por pixel usando o método setBitsPerPixel().
- Em seguida, atribua StreamSource usando o método setSource().
- Crie uma nova imagem e inicialize-a com o objeto BmpOptions e a altura e largura da imagem.
- Crie um objeto da classe Graphics e inicialize-o com o objeto Image.
- Limpe a superfície da imagem com alguma cor usando o método Graphics.clear().
- Desenhe um retângulo usando o método Graphics.drawRectangle(Pen, Rectangle).
- Gere e salve a imagem usando o método Image.save().
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.
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.