Java Programming‎ > ‎Graphics 2D‎ > ‎

Menghasilkan File Gambar / Image

posted Aug 27, 2011, 3:21 AM by Editor KursusInternet   [ updated Aug 29, 2011, 3:23 PM ]

Pendahuluan

Seperti telah disebutkan pada artikel sebelumnya, grafik dapat dihasilkan oleh Java ke device output yang berbeda-beda dimana salah satunya adalah file gambar (image). 

Class-class yang kita perlukan untuk mengolah file gambar ada pada package javax.imageio - yang sesuai namanya - menangani I/O untuk image.

Berikut adalah contoh file class Java yang menggambar polyline pada file gambar PNG.

BufferedImage dan Graphics

Pertama, dari objek BufferedImage kita ambil objek Graphics / Graphics2D dengan metode createGraphics().

Contoh
                 BufferedImage img = new BufferedImage(400400BufferedImage.TYPE_INT_RGB);
                 Graphics2D g2d = (Graphics2D) img.createGraphics();

Setelah itu kita menggambar di atas objek dari Graphics2D yaitu g2d seperti pada contoh berikut.

                Ellipse2D lingkaran;
                double xpusat = 100, ypusat = 100;
                double radius = 80;
                lingkaran  = new Ellipse2D.Double(
                                xpusat,ypusat,
                                radius, radius
                );
                g2d.setPaint(Color.red);
                g2d.fill(lingkaran);

Menyimpan File Gambar dengan ImageIO

Langkah terakhir adalah menyimpan gambar yang sudah kita hasilkan ke dalam file. Untuk ini kita gunakan class ImageIO untuk menghasilkan file dengan salah satu format gambar : PNG, JPG dan GIF.

Contoh potongan code untuk menghasilkan gambar PNG.

                 File outputfile = new File("c:/kursusinternet.com/lingkaran_merah.png");
                 ImageIO.write(img, "png", outputfile);

Kita menggunakan objek File untuk menspesifikan target file gambar yang ingin kita hasilkan dan dipadukan dengan ImageIO untuk definisi format gambarnya.

Contoh Kode Secara Keseluruhan

Berikut adalah potongan kode secara keseluruhan dan hasil eksekusi.



package com.kursusinternet.graphics;

import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.Ellipse2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

public class GambarCirclePNG {
  public static void main(String[] args) {     
      try {
      BufferedImage img = new BufferedImage(400400, BufferedImage.TYPE_INT_RGB);
      Graphics2D g2d = (Graphics2Dimg.createGraphics();

      Ellipse2D lingkaran;
      double xpusat = 100, ypusat = 100;
      double radius = 80;
      lingkaran  = new Ellipse2D.Double(
          xpusat,ypusat,
          radius, radius
      );
      g2d.setPaint(Color.red);
      g2d.fill(lingkaran);
      
      File outputfile = new File("c:/kursusinternet.com/lingkaran_merah.png");
      ImageIO.write(img, "png", outputfile);

    catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}



Hasil File Gambar dan Tampilannya Pada MS Paint

Artikel Terkait

Č
ċ
GambarCirclePNG.java
(1k)
Editor KursusInternet,
Aug 27, 2011, 7:46 AM
Comments