Lompat ke konten
A alfach.com

Membuat file PDF dari HTML di Laravel Menggunakan html2pdf

A alfach.com
1 menit baca
Membuat file PDF dari HTML di Laravel Menggunakan html2pdf

Bagi yang membuat file PDF bisa melalui dari format HTML. Cara ini menggunakan wkhtmltopdf. Wkhtmltopdf merupalan berbasis command line yang me-render HTML ke pdf atau berbagai macam format gambar menggunakan QT webkit engine. Dengan berbasis command line membuatnya lebih ringan. Di laravel sudah ada yang mengimplementasi wkhtmltopdf ini, yaitu nahidulhasan/html2pdf.

Tutorial ini menggunakan basis ubuntu. Sebelumnya dengan melakukan instalasi library yang dibutuhkan :

Shell
sudo apt-get update
sudo apt-get install xvfb libfontconfig wkhtmltopdf

setelah itu pada project laravel anda, jalankan composer :

Shell
composer require nahidulhasan/html2pdf

Jika anda menggunakan versi laravel dibawah 5.5, maka tambahkan ServiceProvider ke dalamfile config/app.php

PHP
NahidulHasan\Html2pdf\Html2pdfServiceProvider::class,

Anda juga dapat menggunakan facade untuk memudahkan class yang lebih ringkas

PHP
'Pdf'  => NahidulHasan\Html2pdf\Facades\Pdf::class,

Penggunaan

Tambahkan pdf pada controller yang akan menggunakan

PHP
use NahidulHasan\Html2pdf\Facades\Pdf;

lalu cukup memanggil method generatePdf, yang isinya berupa html

PHP
$document = Pdf::generatePdf('<h1>Buat pdf dari html</h1>');

atau bisa membuat pdf langsung menggunakan file blade milik laravel. Misal anda sudah memiliki template view/mails beserta mengirim parameter isinya

PHP
<!-- mail template stored in resources/views/mails/greeting.blade.php -->

$document =  Pdf::generatePdf(view('mails.greeting', ['name' => 'Fachrie', 'testVar' => 'demo']));

Mudahkan...untuk lebih jelasnya bisa ke https://github.com/nahidulhasan/laravel-html2pdf

Tag pdf laravel

Bacaan terkait

php

Menerapkan IP Blocker di Laravel

Untuk meningkatkan security di website, salah satunya dengan menerapkan IP blocker atau mem-blokir IP address yang mengakses website. Di laravel salah satunya dengan...

1 menit

Komentar (0)

Belum ada komentar. Jadilah yang pertama.

Tulis komentar

Komentar akan dimoderasi sebelum tampil.

Tidak akan dipublikasikan.