image_lib

class untuk memanipulasi gambar, me-resize (merubah ukuran gambar), meng-crop (memotong gambar), watermark (menambahkan gambar lain ke suatu gambar), me-rotate (merubah posisi gambar seperti memiringkan dll)

includes/class/image_lib.php

image_lib

class untuk memanipulasi gambar, me-resize (merubah ukuran gambar), meng-crop (memotong gambar), watermark (menambahkan gambar lain ke suatu gambar), me-rotate (merubah posisi gambar seperti memiringkan dll)

Contoh penggunaan:

$img = _class('image_lib', $config);
// Untuk me-resize
$img->resize();
// Untuk me-rotate
$img->rotate();
// Untuk meng-crop
$img->crop();
// Untuk watermark
$img->watermark();
Berikut contoh $config yang bisa anda gunakan:
$config = array(
  'source_image'     => '',       // String nama image path yang diproses
  'file_permissions' => 0644,     // octal permission untuk image yang dihasilkan
  'quality'          => '90%',    // String berapa persen qualitas gambar yang ingin dihasilkan
  'new_image'        => '',       // String nama file hasil dari proses resize/rotate/crop/watermark
  'width'            => null,     // Integer lebar pixel hasil dari resize / crop
  'height'           => null,     // Integer tinggi pixel hasil dari resize / crop
  'create_thumb'     => FALSE,    // Boolean apakah hasil resize akan dijadikan thumbnail (file baru atau tidak)
  'thumb_marker'     => '_thumb', // String yang akan menjadi postfix jika 'create_thumb' TRUE
  'maintain_ratio'   => TRUE,     // Boolean apakah ratio gambar dipertahankan ketika meresize
  'master_dim'       => 'auto',   // String menentukan ukuran mana yang akan dijadikan patokan ketika meresize opsi: auto/width/height
  'rotation_angle'   => '',       // String sudut untuk rotate opsi: 90, 180, 270, vrt, hor
  'x_axis'           => null,     // Integer berapa pixel dari kiri ke kanan yang ingin dicrop
  'y_axis'           => null,     // Integer berapa pixel dari atas ke bawah yang ingin dicrop
  );
Dari setiap index key pada Array diatas, jika ada value nya berarti sudah memiliki nilai defaultnya. anda hanya perlu menggunakan jika ingin diubah nilainya

clear

menghapus semua configurasi yang telah ditentukan oleh initialize

clear();
jika anda mengeksekusi method ini, maka anda harus memanggil kembali initialize jika ingin memproses gambar lain

initialize

menentukan konfigurasi class image_lib

initialize($props = array());

method ini akan dipanggil otomatis ketika anda mengeksekusi class menggunakan konfigurasi, tetapi tetap bisa anda panggil kembali jika ingin melakukan proses lain menggunakan konfigurasi yang berbeda. Silahkan lihat contoh penggunaan $props pada halaman image_lib

resize

merubah ukuran gambar

resize();
Contoh penggunaan:

$config = array(
 'source_image'     => '/Users/me/Desktop/test.png',
  'file_permissions' => 0644,
  'quality'          => '90%',
 'new_image'        => '/Users/me/Desktop/output.png',
  'width'            => 75,
  'height'           => 50,
  'create_thumb'     => TRUE,
  'thumb_marker'     => '_thumb',
  'maintain_ratio'   => TRUE,
  'master_dim'       => 'auto' /*auto/width/height*/,
  );
_class('image_lib', $config)->resize();
Script diatas akan menghasilkan output gambar yang bernama "output_thumb.png"

crop

memotong gambar pada ukuran tertentu

crop();
Contoh penggunaan:

$config = array(
  'source_image' => '/path/to/image/mypic.jpg',
  'width'        => 250,
 'height'       => 200,
 'x_axis'       => 100,
 'y_axis'       => 60
 );
_class('image_lib', $config)->crop();

rotate

memutar gambar atau merubah posisi gambar seperti memiringkan dll

rotate();
Contoh penggunaan:

$config = array(
  'source_image'   => '/path/to/image/mypic.jpg',
  'rotation_angle' => 90 // sudut rotasi: 90, 180, 270, vrt, hor
 );
_class('image_lib', $config)->rotate();

watermark

menambahkan watermark, yaitu menyisipkan gambar lain atau text kedalam gambar yang akan diproses

watermark();
Contoh penggunaan watermark berupa text:

$config = array(
  'source_image'     => '/path/to/image/mypic.jpg',
  'wm_type'          => 'text',
  'wm_text'          => 'Copyright 2006 - esoftplay',
  'wm_font_path'     => '/path/to/font.ttf',
 'wm_font_size'     => '16',
  'wm_font_color'    => 'ffffff',
  'wm_vrt_alignment' => 'bottom',
  'wm_hor_alignment' => 'center',
  'wm_padding'       => '20'
 );
_class('image_lib', $config)->watermark();
Contoh penggunaan watermark berupa image lain (biasanya logo / gambar yang lebih kecil):
$config = array(
  'source_image'     => '/path/to/image/mypic.jpg',
  'wm_type'          => 'overlay',
 'wm_overlay_path'  => '/path/to/image/logo.png',
 'wm_opacity'       => 50,
  'wm_x_transp'      => 4,
 'wm_y_transp'      => 4
  );
_class('image_lib', $config)->watermark();

display_errors

menampilkan pesan error dari semua proses dalam class image_lib

display_errors($open = '', $close ='');