Tutorial kali ini akan membahas bagaimana membuat watermark gambar menggunakan codeigniter 4.Watermark sendiri biasa digunakan untuk melindungi gambar kita agar tidak diklaim oleh orang lain.
Untuk membuat watermark di codeigniter 4 menggunakan fungsi text.Fungsi text memiliki dua parameter:
text(string $text, array $options = [])
- $text berisi text yang ditampilkan
- $options berisi konfigurasi seperti warna,ukuran text dll
Untuk contoh penggunaan fungsi text bisa dilihat dibawah ini.
<?php namespace App\Controllers;
class Watermark extends BaseController
{
public function index()
{
$watermark = \Config\Services::image()
->withFile(ROOTPATH.'public/uploads/gambar.jpg')
->text('MedanInCode', [
'color' => '#ffffff',
'opacity' => 0,
'withShadow' => true,
'shadowColor' =>'#000000',
'shadowOffset' => 5,
'hAlign' => 'center',
'vAlign' => 'middle',
'fontSize' => 5
])
->save(ROOTPATH.'public/uploads/watermark_gambar.jpg');
}
}
Pada kode diatas pertama kita memangil fungsi \Config\Services::image() yang merupakan class untuk memanipulasi gambar dari Codeigniter 4,withFile adalah lokasi dari file gambar asli kita,text adalah fungsi untuk membuat watermark,save untuk menyimpan hasil ke lokasi yang baru.
Untuk $options pada kode diatas berikut penjelasannya.
- color parameter untuk warna text harusnya format (hex number).Contoh “#ffffff” untuk putih.
- opacity bernilai antara 0 sampai 1,kalau 0 dia tampil penuh kalau 1 tidak akan ditampilkan
- withShadow bernilai true atau false,jika true akan menampilkan shadow pada text
- shadowColor parameter untuk warna shadow harusnya format (hex number).Contoh “#000000” untuk hitam.
- shadowOffset bernilai angka,berguna untuk mengatur jarak shadow dari text.
- hAlign perataan text di gambar secara horizontal bernilai : left,center atau right
- vAlign perataan text di gambar secara vertical bernilai : top, middle atau bottom
- hOffset tambahan offset horizontal text di gambar,misalnya kita tambah 100 dengan hAlign center maka akan jarak 100 pixel ke kanan begitu juga -100 akan ada jarak 100 pixel ke kiri.
- vOffset tambahan offset vertical text di gambar,mirip seperti *hOffset hanya beda atas dan bawah.
- fontPath digunakan jika ingin menggunakan font custom ,isi dengan lokasi path dari TTF font.
- fontSize jika menggunakan handle image bawaan hanya bernilai 1 sampai 5.
Sekian tutorial kali ini ,jika ada pertanyaan silahkan tanyakan.