Just Share Information and Experience

Friday 18 December 2015

Program resize Ukuran Gambar dengan Netbeans

Dalam contoh kasus disini adalah kita ingin melakukan upload gambar di program java yang menggunakan IDE netbeans. Namun ketika sudah diupload, gambar tersebut sudah diresize sesuai ukuran yang diatur sebelumnya. Dalam beberapa kasus resize gambar penting dilakukan, contoh kasus saat ingin melakukan pengolahan citra maupun pengenalan objek gambar. baik langsung saja buka program netbeans pada pc/laptop masing-masing, kemudian buat project baru :

Langkah selanjutnya buat frame baru, dengan klik kanan kemudian pilih JFrame kemudian ikuti langkah selanjutnya sampai finish




dan tambahkan palette button,Jlabel, dan JFileChooser ke frame.


ingat JFileChooser tempatkan pada Other Componets (sesuaikan pada gambar)

tambahkan baris program program berikut pada source :

public static BufferedImage loadImage(String alamat) {
        BufferedImage bi = null;
        try {
            bi = ImageIO.read(new File(alamat));
        } catch (Exception e) {
            e.printStackTrace();
        }

        return bi;
    }
    
    public static BufferedImage resize(BufferedImage img, int newW, int newH) {

        int w = img.getWidth();
        int h = img.getHeight();
        BufferedImage dimg = dimg = new BufferedImage(newW, newH, img.getType());
        Graphics2D g = dimg.createGraphics();
        g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
        g.drawImage(img, 0, 0, newW, newH, 0, 0, w, h, null);

        g.dispose();
        System.out.println("Ukuran awal gambar panjang : " + w);
        System.out.println("Ukuran awal gambar tinggi : " + h);

        return dimg;

    }

Kemudian langkah selanjutnya kembali ke design, klik 2x pada tombol upload dan tambahkan sehingga menjadi seperti berikut :

 private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
         int gambar = jFileChooser1.showOpenDialog(null);
        if (gambar == JFileChooser.APPROVE_OPTION) {
            File f = jFileChooser1.getSelectedFile();

            BufferedImage loadImg = loadImage(f.toString());

            //proses resize gambar
            gambar_c = resize(loadImg, 300, 300);
            ImageIcon imageicon = new ImageIcon(gambar_c);

            //System.out.println("panjang : "+h);
            //System.out.println("tinggi : "+w);
            jLabel1.setIcon(imageicon);

        }
        
    }

Langkah terakhir langsung kita test program dengan menekan tombol ctrl+shift+f5 , maka akan muncul seperti gambar seperti berikut :



klik upload dan gambar akan otomatis diresize ke ukuran 300 x 300

baik, jika ada yang kurang jelas bisa ditanyakan di kolom komentar, terimaksih dan semoga membantu,,hehehehhe

key : resize, netbeans, upload,

9 comments:

  1. Permisi min, terima kasih atas infonya, mau nanya nih, saya mengalami masalah di gambar_c, itu bagaimana mengatasinya ya? Terima kasih

    ReplyDelete
    Replies
    1. maaf banget nih mas stevanus,, baru mau aktif nulis blog lagi, ga tau sebelumnya ada komentar masuk... sebelumnya apakah masalahkan sudah terpecahkan?

      Delete
    2. Permisi min, terima kasih atas infonya, mau nanya nih, saya mengalami masalah di gambar_c, itu bagaimana mengatasinya ya? Terima kasih

      Delete
    3. bantu jawab admin, itu "gambar_c" nama variable bebas, mau kalian ganti pake nama apa juga bebaaaas.. kalo gk salah gitu ya min soalnya aku juga gk pke nama gabar_c aku pae nama photo. hhehhe

      Delete
  2. Bagai cara memberi peringatan apabila foto yg diupload terlalu besar di java netbeans .
    Terima kasih

    ReplyDelete
  3. permisi min, mau tanya. gambar_c itu menggunakan pallete apa ?

    ReplyDelete
  4. Mau nanya dong min, pda (string alamat)
    Alamat tsb mksdnya apaa ya min?

    ReplyDelete
    Replies
    1. biarin aja gan,, soalnya itu kan parameter, jadi nanti akan dipanggil fungsi dengan parameter alamat gan..

      Delete
  5. kalo buat nyimpen ke databasenya gimana gan

    ReplyDelete