#34-Laravel Membuat PDF dengan DOMPDF

Penjelasan DOMPDF

DOMPDF adalah library PHP yang bisa digunakan untuk membuat laporan PDF dengan PHP. DOMPDF bekerja dengan cara mengubah halaman menjadi file PDF.

Pada tutorial kali ini kita akan belajar bagaimana membuat laporan PDF menggunakan dompdf pada framework laravel.

Persiapan

  1. Installasi Project Laravel

Installasi laravel-dompdf Package

Laravel-dompdf adalah package yang digunakan untuk membuat laporan pdf dari sebuah halaman HTML pada framework laravel, untuk bisa menggunakan nya tentu kita harus melakukan instalasi terlebih dahulu dengan menggunakan composer, silahkan buka terminal anda dan ketik :

composer require barryvdh/laravel-dompdf
Installing DOMPDF

Setelah proses instalasi selesai maka tahap selanjutnya adalah konfigurasi. silahkan buka config/app.php untuk menambahkan package ini agar dikenali oleh sistem laravel lalu tambahkan 2 baris dibawah ini pada block provider dan alias seperti dibawah ini :

'providers' => [
	....
	Barryvdh\DomPDF\ServiceProvider::class,
],
'aliases' => [
	....
	'PDF' => Barryvdh\DomPDF\Facade::class,
]

Membuat Routing Dan Controller

Agar halaman pdf nya nanti bisa diakses oleh visitor, maka kita harus membuat sebuah routing baru pada file routes/web.php dan tambahkan script berikut ini :

Route::get('testpdf','TestPdfController@dogenerate');

Script diatas menjelaskan ketika visitor menunjungi url testpdf maka laravel akan memanggil method generatePDF yang ada pada controller TestPdfController.php, jadi silahkan buat sebuah controller baru dengan nama TestPdfController dan tambahkan script berikut :

php artisan make:controller TestPdfController

app/Http/Controllers/TestPdfController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use PDF;
class TestPdfController extends Controller
{
    public function dogenerate()
    {
        $data = ['title' => 'Welcome to ombagoes.com'];
 
        $pdf = PDF::loadView('testpdf', $data);
        return $pdf->download('testpdf.pdf');
    }
}

Membuat Halaman HTML Dengan Blade

Langkah terakhir adalah mempersiapkan dokumen HTML, karna kita menggunakan laravel maka kita akan membuat sebuah halaman HTML dengan blade, silahkan buat sebuah file view baru dengan nama testpdf.blade.php dan tulislah script berikut ini :

<!DOCTYPE html>
<html>
<head>
	<title>Hi</title>
</head>
<body>
	<h1>{{ $title }}</h1>
	<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
	tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
	quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
	consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
	cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
	proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>

</body>
</html>

Kemudian jika semua sudah selesai, maka silahkan jalankan php artisan serve pada terminal dan buka web browser anda untuk mengakses url http://localhost:8000/testpdf. jika semua tahapan yang anda lakukan benar maka sharusnya browser akan mengdownload sebuah file PDF seperti ini :

testpdf.pdf

Atau jika anda ingin agar laporan PDF nya ditampilkan pada web browser maka silahkan ganti script :

//return $pdf->download('testpdf.pdf');
//menjadi
return $pdf->stream();
Stream PDF

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>