Cara menggunakan php download blob pdf

Hallo sobat, pada tulisan kali ini Saya ingin memberikan tutorial tentang bagaimana cara membuat sebuah laporan dalam bentuk PDF dengan menggunakan bahasa pemrograman PHP dan library yang cukup OKE yaitu HTML2PDF.

Seperti pada tutorial membuat laporan PDF dengan PHP dan MPDF, di tutorial ini Saya juga tidak membahas bagaimana cara membuat laporan secara seutuhnya ya, karena untuk kebutuhan laporan setiap aplikasi yang dibuat pasti berbeda-beda, jadi fokus tulisan ini adalah bagaimana cara membentuk file PDF-nya saja. Selanjutnya Anda bisa kembangkan sendiri, sesuai dengan kebutuhan Anda.

Yuk, mari baca dan simak tulisan ini sampai habis. Di jamin akan memberikan manfaat yang besar untuk menambah pengetahuan Anda. Oke, langsung saja ya.

  • Apa itu HTML2PDF?
  • Cara Kerja HTML2PDF
  • Cara Instal HTML2PDF
  • Cara Menggunakan HTML2PDF
  • Kenapa Menggunakan HTML2PDF?

Apa itu HTML2PDF?

HTML2PDF adalah sebuah library yang berguna untuk membuat report atau laporan dengan format PDF. License pada library HTML2PDF ini Open Source, jadi bisa Anda gunakan secara GRATIS. Mantap Kan?

Cara Kerja HTML2PDF

Cara Kerja dari library HTML2PDF ini yaitu dengan mengkonversi sebuah halaman HTML yang sudah Anda buat ke dalam bentuk format PDF. Library ini sangatlah mudah digunakan, untuk bisa menggunakan library ini Anda harus mengerti dan menguasai script HTML.

Cara Instal HTML2PDF

Pada tutorial ini Saya menggunakan HTML2PDF dengan versi 5.2, saat tulisan ini dibuat versi ini adalah versi yang paling terbaru. Untuk mengintal HTML2PDF terbaru Anda bisa menggunakan Composer dengan memasukan command line seperti dibawah ini:

composer require spipu/html2pdf

Dan jangan lupa, untuk instal dengan Composer seperti diatas Anda harus instal Composernya terlebih dahulu ya.

Namun jika Anda ingin menggunakan versi 5.2 sesuai dengan contoh pada tulisan ini (direkomendasikan), Anda tidak perlu menginstal menggunakan Composer. Anda cukup clone menggunakan GIT atau download library HTML2PDF ini pada link GITHUB yang sudah Saya sediakan diberikut ini: https://github.com/rachmat-id/html2pdf_v5.2

Cara menggunakan php download blob pdf

Cara Menggunakan HTML2PDF

Untuk informasi, pada tutorial ini Saya menggunakan Windows 10 64bit dan Xampp dengan PHP versi 7.2.23. di tutorial ini Saya akan memberikan 3 cara yang paling sering digunakan dalam membuat laporan dengan HTML2PDF, yaitu menampilkan PDF di browser, generate file PDF tanpa harus tampil di browser (auto save file) dan auto download file. Yuk, simak langkah-langkah dibawah ini dengan cermat.

1. Buatlah sebuah folder aplikasi pada htdocs. Pada tutorial ini folder aplikasi Saya berikan nama laporan-php-html2pdf.

2. Copy library HTML2PDF yang sudah Anda download dari halaman GITHUB yang sudah Saya sediakan diatas. Atau jika Anda instal menggunakan Composer, Anda bisa arah destinasi intalasi library tersebut ke folder aplikasi. Namun Saya lebih menyarankan ambil library HTML2PDF dari GITHUB yang Saya sediakan, agar selaras dengan tutorial yang Saya buat ini.

Dari hasil 2 langkah diatas akan menghasilkan hirarki folder seperti dibawah ini:

Cara menggunakan php download blob pdf

3. Buatlah script PHP seperti dibawah ini:

<?php
	$content = "
	<html> 
	<body>
		<h2>HTML2PDF WORK !</h2> 
		Selamat datang di rachmat.ID
	</body>
	</html>
	";

	require __DIR__.'/html2pdf_v5.2-master/vendor/autoload.php';
	use Spipu\Html2Pdf\Html2Pdf;
	$html2pdf = new Html2Pdf('P','A4','fr', true, 'UTF-8', array(15, 15, 15, 15), false); 
	$html2pdf->writeHTML($content);
	$html2pdf->output();
?>

Save dengan nama index.php dan letakan di dalam folder aplikasi, yaitu folder laporan-php-html2pdf. Yang perlu Anda perhatikan pada script PHP diatas yaitu baris script berikut ini:

$html2pdf = new Html2Pdf('P','A4','fr', true, 'UTF-8', array(15, 15, 15, 15), false);

Pada baris script ini berfungsi untuk mengatur orientation (default P), ukuran kertas (default A4), bahasa (Default fr), string unicode (Default true), charset encoding (Default UTF-8), margin (Default array(5, 5, 5, 8) ) dan mode PDF or PDF/A (Default false). Untuk penjelasan lebih lengkapnya bisa Anda baca pada link berikut ini: https://github.com/spipu/html2pdf/blob/master/doc/basic.md

Dalam penerapan HTML2PDF ini, hal terpenting yang harus Anda atur antara lain orientation, ukuran kertas dan margin. Jadi sesuaikan dengan kebutuhan Anda ya.

4. Langkah selanjutnya, jalankan aplikasi di browser Anda dengan cara mengakses alamat http://localhost/laporan-php-html2pdf dan akan menghasilkan output seperti gambar dibawah ini:

Cara menggunakan php download blob pdf

Sampai disini, ini adalah cara menggunakan library HTML2PDF dengan cara menampilkan PDF di browser. Lalu, bagaimana jika ingin menggunakan cara generate file PDF tanpa harus tampil di browser (auto save file)?

Anda cukup mengganti script berikut ini:

$html2pdf->output();

Menjadi:

$html2pdf->output(__DIR__."/contoh_laporan.pdf","F");

Ketika aplikasi dijalankan, aplikasi tidak akan menampilkan PDF di browser seperti sebelumnya (Blank). Namun secara otomatis akan membentuk file PDF dengan nama contoh_laporan.pdf (isi pdf sama) pada folder aplikasi seperti berikut ini:

Cara menggunakan php download blob pdf

Selanjutnya, jika Anda ingin membuat auto download file gunakan script dibawah ini:

$html2pdf->output("contoh_laporan.pdf","D");

Ketika aplikasi dijalankan, browser secara otomatis mendownload laporan atau file PDF tersebut dan diberi nama contoh_laporan.pdf seperti gambar dibawah ini:

Cara menggunakan php download blob pdf

5. Selesai. Sangat mudah kan?

Kenapa Menggunakan HTML2PDF?

Kalau dari Saya pribadi, Ada 2 alasan kenapa harus menggunakan HTML2PDF. Di antaranya yaitu:

  1. License library ini Open Source atau GRATIS.
  2. Library HTML2PDF ini memiliki dokumentasi yang cukup lengkap. Pada dokumentasinya tersedia tutorial dari bagaimana cara penginstalan sampai dengan cara penggunaannya, semua tersedia di website resminya di https://github.com/spipu/html2pdf/blob/master/doc/README.md

Demikian pembahasan tentang Cara Membuat Laporan PDF dengan PHP dan HTML2PDF, semoga tulisan ini bisa memberikan manfaat untuk Anda yang membaca. Sampai jumpa di tulisan berikutnya. Terima Kasih