Membuat QR Code Dengan Logo di PHP
Wednesday, 20 February 2019
Edit
Membuat QR Code Dengan Logo di PHP
Barcode QR Code atau barcode 2D banyak digunakan untuk keperluan menyimpan data, bisa berupa key, link atau variabel yang berfungsi untuk memudahkan pengguna melakukan input data cukup dengan scan saja.dengan adanya QR code kita bisa mempermudah pekerjaan input data, pada kesempatan kali ini saya akan share sedikit hasil iseng saya membuat QR code dengan Logo di PHP, dengan logo.? ya dengan logo tentunya jika anda pernah install line anda akan mendapatkan QR code dengan logo line didalamnya.
Nah pada tutorial kali ini kita akan membuat QR code dengan logo di dalamnya, pertama tama silahkan anda download QR Code Library anda bisa mendownloadnya di link berikut ini http://phpqrcode.sourceforge.net
Baca Juga : membuat barcode generator QR Code dengan PHP
Setelah di download silahkan buat folder dengan nama phpqrcodelogo simpan di direktori c:/xampp/htdocs, silahkan simpan plugin qr code di folder tersebut selanjutnya silahkan anda copy dan pastekan kode di bawah ini :
<!DOCTYPE html> <html> <head> <title>QR code generator with logo (BaGen V3) | www.hakkoblogs.com</title> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> </head> <body> <center> <h3 style="margin-top:100px">Barcode Generator (Bagen) QR with Logo</h3> <p><a href="https://www.hakkoblogs.com"> www.hakkoblogs.com</a></p> <form method="get" action=""> <input type="text" style="margin-bottom : 5px;" name="nama" autocomplete="off" required="required" /><br/> <input type="submit" name="input" class="btn btn-sm btn-primary" value="Generate !" /> <a href="index.php" class="btn btn-sm btn-success">Refresh !</a> </form> </center> <?php if (isset($_GET['input'])){ $nama = $_GET['nama']; $exten= ".png"; $imgname = $nama.$exten; $data = isset($_GET['data']) ? $_GET['data'] : "$nama"; $logo = isset($_GET['logo']) ? $_GET['logo'] : 'logo.png'; $sdir = explode("/",$_SERVER['REQUEST_URI']); $dir = str_replace($sdir[count($sdir)-1],"",$_SERVER['REQUEST_URI']); // === Create qrcode image include('phpqrcode/qrlib.php'); QRcode::png($data,$imgname,QR_ECLEVEL_L,11.45,0); // === Adding image to qrcode $QR = imagecreatefrompng($imgname); if($logo !== FALSE){ $logopng = imagecreatefrompng($logo); $QR_width = imagesx($QR); $QR_height = imagesy($QR); $logo_width = imagesx($logopng); $logo_height = imagesy($logopng); list($newwidth, $newheight) = getimagesize($logo); $out = imagecreatetruecolor($QR_width, $QR_width); imagecopyresampled($out, $QR, 0, 0, 0, 0, $QR_width, $QR_height, $QR_width, $QR_height); imagecopyresampled($out, $logopng, $QR_width/2.65, $QR_height/2.65, 0, 0, $QR_width/4, $QR_height/4, $newwidth, $newheight); } imagepng($out,$imgname); imagedestroy($out); // === Change image color $im = imagecreatefrompng($imgname); $r = 44;$g = 62;$b = 80; for($x=0;$x<imagesx($im);++$x){ for($y=0;$y<imagesy($im);++$y){ $index = imagecolorat($im, $x, $y); $c = imagecolorsforindex($im, $index); if(($c['red'] < 100) && ($c['green'] < 100) && ($c['blue'] < 100)) { // dark colors // here we use the new color, but the original alpha channel $colorB = imagecolorallocatealpha($im, 0x12, 0x2E, 0x31, $c['alpha']); imagesetpixel($im, $x, $y, $colorB); } } } imagepng($im,$imgname); imagedestroy($im); // === Convert Image to base64 $type = pathinfo($imgname, PATHINFO_EXTENSION); $data = file_get_contents($imgname); $imgbase64 = 'data:image/' . $type . ';base64,' . base64_encode($data); // === Show image echo "<img src='$imgbase64' style='position:relative;display:block;width:240px;height:240px;margin:50px auto;'>"; } ?> <body> </html>
Simpan dengan nama index.php di folder c:/xampp/htdocs/phpqrcodelogo langkah selanjutnya adalah menjalankan script tersebut, silahkan access browser localhost/phpqrcodelogo, jika berhasil anda akan mendapatkan tampilan seperti di bawah ini
Baca juga : membuat barcode generator dengan php (BaGen) Versi 1
seperti itulah tampilan dari barcode generator QR code dengan Logo di PHP, untuk logo sendiri anda harus menggunakan gambar dengan format .png dan untuk resolusi gambar saya menggunakan 226 x 226 pixel, silahkan ubah logo yang ada dengan logo yang anda inginkan.
Bagaimana.? mudah bukan untuk Membuat QR Code Dengan Logo di PHP atau anda masih bingung.? tenang saya sudah menyediakan link download untuk anda bisa belajar dari scriptnya langsung, silahkan download di repository saya di github, jangan lupa di fork ya :D
https://github.com/acchoblues/QR-Code-With-Logo-Bagen-V3
semoga tutorial singkat Membuat QR Code Dengan Logo di PHP bisa bermanfaat untuk anda yang sedang ingin membuat QR dengan logo, silahkan di coba dan dipraktekkan, karena tanpa praktek semuanya hanya sia - sia belaka, terus belajar dan keep programming.
Happy Coding & Programming