Langsung ke konten utama

Membuat Image watermark dengan php

Watermark adalah suatu teknik memberi tulisan pada gambar agar gambar tersebut tidak dengan mudah di copy paste oleh orang lain, teknik ini seperti copyright di gambar.
Pada pembahasan kali ini kita akan membahas pembuatan watermark dengan menggunakan fungsi PHP kita juga butuh satu file yang akan menjadi label watermarknya, ukuran width dan height watermarknya disesuaikan dengan file image yang diupload misalnya, ukuran image yang akan diupload 1000 px dan height nya 500px maka file label watermarknya harus berukuran sama.

Berikut ini langkah-langkahnya
Buat folder watermark di dalam htdocs (optional tergantung kita menggunakan web servernya)
Buat file index.php kemudian ketikan script berikut ini
<?php
  require_once('watermark_image.php');
  $file=$_FILES['image']['name'];
  if($file!="")
  {
  $path="image/".$file;
  $dest="image/watermark_".$file;
  copy($_FILES['image']['tmp_name'],$path);
  create_watermark($path, $dest);
  //cropImage(100, 100, $path, $dest);
  $size_thumb = getimagesize($dest); // ukuran gambar
  $w_thumb = $size_thumb[0];
  $h_thumb = $size_thumb[1]; 
  $size=getimagesize($path);
  $w=$size[0];
  $h=$size[1];
  }
  ?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>Untitled Document</title>
  </head>
  <body>
  <form method="post" action="<? $_SERVER['PHP_SELF'];?>
  " enctype="multipart/form-data">
  <table border="0">
  <tr>
  <td>Image</td><td><input type="file" name="image" /></td>
  </tr>
  <tr>
  <td><input type="submit" name="submit" value="upload" /></td>
  </tr>
  </table>
  </form>
  <?php
  if($file !="")
  {
  ?>
  <img src="image/watermark_<?php echo  $file;?>" />
  <p>
  <?php echo "filename : watermark_". $file;?></p>
  <p>
  <?php echo "width :".$w_thumb." px";?></p>
  <p>
  <?php echo "height :".$h_thumb." px";?></p>
  <img src="image/<? echo $file;?>"  />
  <p>
  <?php echo "filename : ". $file;?></p>
  <p>
  <?php echo "width :".$w." px";?></p>
  <p>
  <?php echo "height :".$h." px";?></p>
  <?php
  }
  ?>
  </body>
  </html> 

Setelah itu buat file bernama watermark_image.php file ini nanti digunakan untuk membuat watermark, berikut ini scriptnya
define('WATERMARK_OVERLAY_IMAGE', 'watermark.png'); //definisikan image watermark
define('WATERMARK_OUTPUT_QUALITY', 90);//definisikan output quality


function create_watermark($source_file_path, $output_file_path)
{
list($source_width, $source_height, $source_type) = getimagesize($source_file_path);
if ($source_type === NULL) {
   return false;
    }
    switch ($source_type) 
    {
        case IMAGETYPE_GIF:
            $source_gd_image = imagecreatefromgif($source_file_path);
            break;
        case IMAGETYPE_JPEG:
            $source_gd_image = imagecreatefromjpeg($source_file_path);
            break;
        case IMAGETYPE_PNG:
            $source_gd_image = imagecreatefrompng($source_file_path);
            break;
        default:
        return false;
    }
    
    $overlay_gd_image = imagecreatefrompng(WATERMARK_OVERLAY_IMAGE);
    imagealphablending($overlay_gd_image, false);
    imagesavealpha($overlay_gd_image, true);
    $overlay_width = imagesx($overlay_gd_image);
    $overlay_height = imagesy($overlay_gd_image);
    
    $newWidth=($source_width*67.88)/100;
    $newHeight=($source_height*67.88)/100;
   
    imagecopy(
        $source_gd_image,
        $overlay_gd_image,
        0,
        0,
        0,
        0,
        $overlay_width,
        $overlay_height
    );
    
    imagejpeg($source_gd_image, $output_file_path, WATERMARK_OUTPUT_QUALITY);
    imagedestroy($source_gd_image);
    imagedestroy($overlay_gd_image);
}

?>
Berikut ini adalah contoh file yang telah diberi watermark
Gambar sebelum diwatermark


 Gambar setelah diwatermark


Untuk label watermark anda bisa membuatnya menggunakan photoshop sesuai keinginan, untuk file lengkapnya bisa di download di sini
http://www.4shared.com/zip/56yuQphTba/watermark.html

Komentar

Postingan populer dari blog ini

Crystal Report Error : Failed to load database infromation

Ketika menjalankan crystal report tiba - tiba terjadi error dengan pesan Failed to load database infromation, usut punya usut ternyata penyebabnya adalah windows 10. Gambar : Error Crystal Report Tapi tenang saja berikut ini saya akan bahas cara penyelesaianya Masuk ke file yourApp.exe.config. Cari code <?xml version="1.0" encoding="utf-8" ?> <configuration>     <startup>          <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />     </startup> </configuration> Ubah menjadi <?xml version="1.0"?> <configuration> <startup useLegacyV2RuntimeActivationPolicy="true"><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup> </configuration> Kemudian coba lagi jalankan print dengan crystal report.  Source http://stackoverflow.com/questions/15951142/appcrash-on-s

Perbedaan metode close dan dispose

Klikartikel.com Perbedaan dasar antara Close () dan Dispose () yaitu, ketika metode Close () dipanggil, maka koneksi akan ditutup sementara dan dapat dibuka sekali lagi. lalu perbedaan dengan dispose () yaitu ketika metode dispose dipanggil maka akan secara permanen menutup dan menghapus objek koneksi dari memori dan tidak ada lagi pemrosesan lebih lanjut. Contoh penggunaan fungsi Close dan Dispose string constring = "Server=(localhost);database=myprojectdb; username =root; password=admin"; SqlConnection sqlcon = new SqlConnection(constring); sqlcon.Open();   // disini koneksi dibuka // jalankan kode disini } catch {      // kode akan dijalankan saat error terjadi di blok try } finally {  sqlcon.Close();               // koneksi ditutup  sqlcon.Dispose();         // menghancurkan koneksi objek }

Cara Mudah Upload File Ke Github

Klikartikel.com - Selamat malam udah lama rasanya ga posting ke blog ini karena kegiatan kuliah dan kerjaan yang padat. Kali ini kita akan belajar tentang bagaimana cara mengupload file atau project kita ke github, Langsung saja kita bahas bagaimana cara mudah upload file ke github Pertama - tama buat akun github terlebih dahulu. Pastikan koneksi internet anda lancar dan stabil Pilih folder yang akan kita upload filenya  Kemudian masukan perintah berikut Pertama Inisialisai file git int Kedua Memasukan File Project git add * Atau jika kita hanya memasukan beberapa file bisa menggunkan perintah seperti di bawah ini git add namafile.format_file Setelah itu cek status file  Ketiga menyimpan sekaligus membuat catatan  git commit -m "upload pertama" Login ke akun github kemudian buat repository    Copy link repository Melakukan Pull and Push Masuk ke terminal lagi kemudian koneksikan antara repository dan github di dekstop deng