Skip to main content

Lesson 1 : Image Editor dengan PHP (Brightness & Negasi)

untuk membuat program images editor dengan PHP dibutuhkan minimal PHP versi 5 keatas dan library GDLIB, anda bisa menggunakan XAMPP versi 1.6.3 keatas. source code program bisa didownload disini
untuk penjelasan awal kita akan mempelajari tentang bagaimana sebuah program image editor seperti photoshop, gimp, dll menambah kecerahan sebuah gambar (brightness) dan negasi. sebuah gambar itu sebenarnya terdiri dari titik-titik yang disebut pixel. dimana pixel ini mengandung 2 informasi, yaitu koordinat dan warna. nilai sebuah warna adalah mulai 0 sampai 255, dimana 0 berarti hitam dan 255 berarti putih. nah, untuk menambahkan brightness kita hanya perlu menambahkan nilai warna sebelumnya dengan sebuah konstanta. tujuannya adalah menambahkan nilainya agar mendekati kewarna putih sehingga gambar lebih terang
rumus brightness adalah f'(x,y)=f(x,y)+c
dimana f'(x,y) : nilai warna baru setelah ditambah konstanta
f(x,y) : nilai awal warna
c : kontanta
source code brightness dapat dilihat pada file yang anda download tadi pada file brightness.php di folder editor.
algoritmanya adalah sebagai berikut
1. tentukan konstanta c (untuk nilai inputan yang sudah ditentukan, ini bisa dimodifikasi jika nilai c ingin ditentukan oleh user)
2. load gambar asli. pada php dengan perintah  
imagecreatefromjpeg
3. mengetahui tinggi & lebar gambar asli. pada php dengan perintah
imagesx (untuk lebar) dan imagesy (untuk tinggi)
4. membuat image baru. pada php dengan perintah
imagescreatetruecolor(lebar, tinggi)
5. membuat perulangan untuk lebar dan tinggi
misal
for ($x=0; $x<lebar;$x++){
     for($y=0;$y<tinggi;$y++){
         $rgb=imagescolorat ($img, $x, $y);
         $cols=imagescolorforindex($img, $rgb);
         $r=$cols('red');
         $g=$cols('green');
         $b=$cols('blue');
         $rr=$r+c                 //rumus brigtness diterapkan disini
         if($rr>255) {$rr=255}  //pembatasan jika input melebihi 0-255
            if($rr<0){$rr=0}
        $gg=$g+c;
        if($gg>255){$gg=255}
           if($gg<0){$gg=0}
        $bb=$b+c;
        if($bb>255){$bb=255}
           if($bb<0){$bb=0}
6. meletakkan pixel dalam pixel baru. pada php dengan perintah
imagecolorlocate(imagebaru, $rr, $gg, $bb);
imagesetpixel(imagebaru, x, y, warna);

sedangkan untuk negasi atau membuat gambar dengan efek negatif prinsipnya adalah dengan membalik nilai warna.
rumus negasi adalah f'(x,y)=255-f(x,y)
algoritmanya sama, kita hanya tinggal merubah rumus brightness diatas dengan rumus negasi. file sourcecode negasi ada di folder editor dengan nama negasi.php

Comments

Popular posts from this blog

Install Modem SmartFren Connex AC682 di Ubuntu

berikut cara install modem smartfren connex AC682 di ubuntu. diambil dari forum ubuntu indonesia secara garis besar yang perlu dipersiapkan adalah 1. instal wvdial, karena dengan konfigurasi modprobe biasa pada applet panel network manager dikenali sebagai modem GSM. 2. konfigruasi wvdial untuk smartfren 3. konfigurasi usb_modeswitch 4. dan konfigurasi file .rules berikut adalah langkah milih pinsuit dan einhejars, perbedaanya dua cara tersebut adalah pada konfirugasi file .rules (lihat langkah 10 milik pingsuit dan langkah 9 milik einhejars) berikut langkah-langkahnya :

MEMBUAT DOMAIN NAME EMAIL PRIBADI

bagi yang bosen ama domain name email standar kaya @gmail.com, @yahoo.com, @yahoo.co.id, kalian bisa menggunakan domain name sendiri, kan gak keren lo email perusahaan pake domain name umum, ketahuan banget tu perusahaan g bermodal wat bikin domain name email yang premium. tapi jangan takut, cara dibawah ini 100% FREE, caranyapun mudah, hanya saja butuh proses agak lama. tapi aku jamin dalam 48jam kalian bisa memiliki domain name pribadi seperti @bambang.co.cc, @merdeka-jateng.co.cc, dll. langsung aja berikut caranya: Langkah pertama: Masuk ke website co.cc, dan pada halaman depan tersebut, Anda akan melihat kotak pengecekan domain. Masukkan nama yang Anda inginkan, kemudian click Check Availability. Pastikan bahwa untuk nama domain tersebut tertulis Free. Jika tersedia, tetapi diharuskan membayar jumlah tertentu, Anda dapat mengulangi dengan memasukkan nama domain yang lain pada kotak pengecekan di bawahnya, kecuali memang Anda bersedia untuk membayarnya. Jika sudah, click Continue...

Komputer Grafik : GAME

anda mendapat mata kuliah komputer grafik dikampus anda? dan mendapatkan tugas untuk membuat game? nah saya akan berbagi tugas kuliah yang pernah saya dapatkan pada pada kuliah tersebut. “ Grafik komputer ” atau Grafika komputer (Computer graphics) adalah salah satu cabang ilmu komputer yang berhubungan dengan pembuatan dan manipulasi gambar visual secara digital. waktu itu saya disuruh membuat sebuah game dengan bahasa pemrograman bebas sebagai tugas akhir semester matakuliah komputer grafik. akhirnya tugas tersebut saya buat dengan dengan menggunakan bahasa pemrograman Delphi, kalo gak salah waktu itu saya menggunakan Delphi 5 yang portable, karena waktu itu saya menggunakan linux (ubuntu 9.10) pada OS komputer saya. semua berjalan lancar saat proses desain game dan coding, hanya sedikit kendala yaitu hasil digame saat dijalankan di linux terasa lebih lemot (lambat) dibandingkan dengan di Windows, mungkin karena di linux saya menggunkan Wine sebagai emulator untuk menjalankan f...