Kali
ini kita akan mencoba membuat kalender hijriah berformat PNG dengan
fungsi-fungsi yang telah ada di PHP. Untuk itu kita butuh beberapa
persiapan dan perlengkapan yang akan diperlukan nanti.
PERLENGKAPAN:
1. Satu set computer lengkap dengan webserver-nya. Anda bisa gunakan XAMPP.
2. Satu file font untuk fontasinya, saya menggunakan Antropos Freefont (antrf.ttf).
3. Gambar/image dengan desain kalender dengan format PNG.
1. Satu set computer lengkap dengan webserver-nya. Anda bisa gunakan XAMPP.
2. Satu file font untuk fontasinya, saya menggunakan Antropos Freefont (antrf.ttf).
3. Gambar/image dengan desain kalender dengan format PNG.
PERSIAPAN:
1. Beberapa cemilan penunda lapar.
2. Sebungkus rokok diganti saja dengan secangkir gahwa (hot coffe).
3. Pastikan bahwa Anda sudah mengenal dasar-dasar PHP.
1. Beberapa cemilan penunda lapar.
2. Sebungkus rokok diganti saja dengan secangkir gahwa (hot coffe).
3. Pastikan bahwa Anda sudah mengenal dasar-dasar PHP.
Langsung aja gan…
Contoh background kalendernya:
Pertama-tama jalankan webservernya. Bagi yang belum ngerti jalanin webserver, silahkan cari tutorialnya di google.
Kemudian buat file index.php terlebih dahulu dan masukkan script dibawah ini…
<?php // =================================================== // // THIS SOURCE CODE IS FREE FOR USE // IN THE NAME OF ALLAH SUBHANAHU WA TA'ALA // // Author: Sepyan Purnama k(shinjikoo@gmail.com)
// =================================================== // Konversi masehi ke hijriyah $tanggal = getdate(); $wday = $tanggal[wday]; $hr = $tanggal[mday]; $bln = $tanggal[mon]; $thn = $tanggal[year]; if (($thn > 1582) || (($thn == 1582) && ($bln > 10)) || (($thn == 1582) && ($bln == 10) && ($hr > 14))) { $zjd=(int)((1461 * ($thn + 4800 + (int)(($bln - 14) / 12))) / 4) + (int)((367 * ($bln - 2 - 12 * ((int)(($bln - 14) / 12)))) / 12) - (int)((3 * (int)((($thn + 4900 + (int)(($bln - 14) / 12)) / 100))) / 4) + $hr - 32075; } else { $zjd = 367 * $thn - (int)((7 * ($thn + 5001 + (int)(($bln - 9) / 7))) / 4) + (int)((275 * $bln) / 9) + $hr + 1729777; } $zl=$zjd-1948440+10632; $zn=(int)(($zl-1)/10631); $zl=$zl-10631*$zn+354; $zj=((int)((10985-$zl)/5316))*((int)((50*$zl)/17719))+((int)($zl/5670))*((int)((43*$zl)/15238)); $zl=$zl-((int)((30-$zj)/15))*((int)((17719*$zj)/50))-((int)($zj/16))*((int)((15238*$zj)/43))+29; $bln=(int)((24*$zl)/709); $hari=$zl-(int)((709*$bln)/24); $tahun=30*$zn+$zj-30; if($bln==1){ $bulan = "Muharram";} if($bln==2){ $bulan = "Safar";} if($bln==3){ $bulan = "Rabiul Awal";} if($bln==4){ $bulan = "Rabiul Akhir";} if($bln==5){ $bulan = "Jamadil Awal";} if($bln==6){ $bulan = "Jamadil Akhir";} if($bln==7){ $bulan = "Rejab";} if($bln==8){ $bulan = "Syaaban";} if($bln==9){ $bulan = "Ramadhan";} if($bln==10){ $bulan = "Syawal";} if($bln==11){ $bulan = "Zulkaedah";} if($bln==12){ $bulan = "Zulhijjah";} if($wday==0) { $namahari = "A H A D"; } if($wday==1) { $namahari = "I T S N A I N"; } if($wday==2) { $namahari = "T S A L A T S A"; } if($wday==3) { $namahari = "A R B I ' A N"; } if($wday==4) { $namahari = "K H A M I S"; } if($wday==5) { $namahari = "J U M U ' A H"; } if($wday==6) { $namahari = "S A B T"; } // Pembuatan output gambar berformat PNG header("Content-Type: image/PNG"); $img = imagecreatefromPNG("bghijri.png"); $fontfile = "./antrf.TTF"; $putih = imagecolorallocate($img, 255, 255, 255); imageTTFText($img, 10, 0, 5, 45, $putih, $fontfile, $namahari); $hitam = imagecolorallocate($img, 0, 0, 0); $batas = imageTTFbbox(40, 0, $fontfile, $hari); $x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4; imageTTFText($img, 40, 0, $x, 100, $hitam, $fontfile, $hari); $batas = imageTTFbbox(10, 0, $fontfile, $bulan); $x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4; imageTTFText($img, 10, 0, $x, 118, $hitam, $fontfile, $bulan); $tahun = $tahun . " H"; $batas = imageTTFbbox(10, 0, $fontfile, $tahun); $x = imageSX($img)/2 - ($batas[0] + $batas[2] + $batas[4] + $batas[6]) / 4; imageTTFText($img, 10, 0, $x, 133, $hitam, $fontfile, $tahun); imagePNG($img); imagedestroy($img); ?>
Code
diatas akan menghasilkan gambar berformat PNG. Jika Anda ingin merubah
formatnya, Anda bisa mengganti sebagian code diatas. Seperti contoh
“Content-Type: image/PNG” diganti ke format GIF menjadi “Content-Type:
image/GIF”, atau ke format JPG menjadi “Content-Type: image/JPEG”.
Dan pastikan file gambar untuk background dan fontasinya udah Anda siapkan dalam satu folder dengan file index.
Jalankan, kemudian lihat hasilnya…
Sumber:3tnic.wordpress.com
Dan pastikan file gambar untuk background dan fontasinya udah Anda siapkan dalam satu folder dengan file index.
Jalankan, kemudian lihat hasilnya…
Sumber:3tnic.wordpress.com


1 komentar:
Gimana membuat script PHP dari Hijriah ke Masehi?
Jika 4 Muharram 463H, tangal, bulan dan tahun berapa di Masehi.
Terima kasih
Posting Komentar
Silahkan memberi kritik atau saran dengan menulis komentar dibawah ini