A API Java 2D fornece programas Java com imagens bidimensionais, recursos de texto e gráficos através da extensão da caixa de ferramentas abstrata (AWT). Este pacote de renderização complexo suporta imagens lineares, texto e gráficos, fornecendo estruturas flexíveis e poderosas para desenvolvedores de interfaces de usuário ricas, programas de desenho complexos e processadores de imagem. Os objetos Java 2D aparecem em um avião, chamados de espaço do sistema de coordenadas do usuário, e o espaço do sistema de coordenadas do dispositivo. Quando um objeto é renderizado na tela ou em uma impressora, o sistema de coordenadas espaciais do usuário é convertido no sistema de coordenadas do espaço do dispositivo.
A cópia do código é a seguinte:
importar java.awt.basicsTroke;
importar java.awt.color;
importar java.awt.graphics2d;
importar java.awt.renderinghints;
importar java.awt.image.bufferiMage;
importar java.io.file;
importar java.io.ioException;
importar java.util.iterator;
importar java.util.random;
importar javax.imageio.*;
importar javax.imageio.stream.imageOutputStream;
Teste de classe pública {
public static void main (string [] args) lança ioexception {
int width = 800;
int altura = 800;
Imagem bufferedImage = new BufferImage (
largura, altura, bufferImage.type_int_rgb);
Graphics2d g2d = image.creategraphics ();
g2d.setColor (color.white);
g2d.fillRect (0, 0, largura, altura);
g2d.setRanderingHint (renderinghints.key_antialiasing,
Renderinghints.value_antialias_on);
Aleatório aleatório = novo aleatório ();
int wo = 0;
int ho = 0;
for (int i = 0; i <10; i ++) {
int x = random.nextInt (largura);
int y = random.nextint (altura);
g2d.setColor (nova cor (Random.nextint (256),
Random.Nextint (256), Random.NextInt (256));
G2D.SetStroke (novo BasicStroke (1));
g2d.drawString ("nó"+i, x, y);
g2d.drawarc (x, y, 20, 20, 0, 360);
if (i! = 0) {
g2d.drawline (wo, ho, x, y);
}
wo = x;;
ho = y;
}
g2d.dispose ();
ImageWriter Writer = NULL;
ImageTyPesPeCifier Type =
ImageTyPespecifier.createFromRenderDImage (imagem);
Iterator iter = imageio.getImageWriters (tipo, "jpg");
if (iter.hasnext ()) {
writer = (ImageWriter) iter.Next ();
}
if (writer == null) {
retornar;
}
Iioimage iioimage = new iioimage (imagem, nulo, nulo);
ImageWriteParam param = writer.getDefaultWriteParam ();
param.SetCompressionMode (ImageWriteParam.mode_explicic);
param.SetCompressionQuity ((float) ((10) / 10.0));
ImageOutputStream OutputStream =
Imageio.createImageOutputStream (novo arquivo ("c: /test.jpg"));
writer.setOutput (outputStream);
writer.write (null, iioimage, param);
}
}