JAVA 2D API menyediakan program Java dengan gambar dua dimensi, teks dan kemampuan grafis melalui ekstensi kotak toolbox jendela abstrak (AWT). Paket rendering yang kompleks ini mendukung gambar linier, teks dan grafik, memberikan kerangka kerja yang fleksibel dan kuat untuk pengembang antarmuka pengguna yang kaya, program gambar yang kompleks dan prosesor gambar. Objek Java 2D muncul di pesawat, disebut ruang sistem koordinat pengguna, dan ruang koordinat perangkat. Ketika suatu objek diterjemahkan pada layar atau di printer, sistem koordinat ruang pengguna dikonversi ke sistem koordinat ruang perangkat.
Salinan kode adalah sebagai berikut:
impor java.awt.basicstroke;
impor java.awt.color;
impor java.awt.graphics2d;
impor java.awt.renderinghints;
impor java.awt.image.bufferedimage;
impor java.io.file;
impor java.io.ioException;
impor java.util.iterator;
impor java.util.random;
impor javax.imageio.*;
impor javax.imageio.stream.imageOutputStream;
tes kelas publik {
public static void main (string [] args) melempar ioException {
Int Width = 800;
tinggi int = 800;
BufferedImage Image = BufferedImage baru (
lebar, tinggi, bufferedimage.type_int_rgb);
Grafik2d g2d = image.creategraphics ();
G2D.SetColor (Color.White);
g2d.fillrect (0, 0, lebar, tinggi);
g2d.setrenderinghint (renderinghints.key_antialiasing,
Renderinghints.value_antialias_on);
Acak acak = acak baru ();
int wo = 0;
int ho = 0;
untuk (int i = 0; i <10; i ++) {
int x = random.nextInt (lebar);
int y = random.nextInt (tinggi);
g2d.setColor (warna baru (acak.nextint (256),
acak.nextint (256), acak.nextint (256));
G2D.Setstroke (BasicStroke baru (1));
g2d.drawstring ("node"+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.createFromrenderedImage (gambar);
Iterator iter = imageo.getimagewriters (type, "jpg");
if (iter.hasnext ()) {
penulis = (imagewriter) iter.next ();
}
if (writer == null) {
kembali;
}
IioImage iioImage = iioImage baru (gambar, null, null);
ImageWritEparam Param = writer.getDefaultWriteParam ();
param.setCompressionMode (ImageWritEparam.mode_explicit);
param.setCompressionquality ((float) ((10) / 10.0));
ImageOutputStream outputStream =
Imageo.CreateMageOutputStream (file baru ("c: /test.jpg"));
writer.setoutput (outputStream);
writer.write (null, iioimage, param);
}
}