barryvdh/laravel-dompdf
install package menggunakan command ini:
composer require barryvdh/laravel-dompdf
dalam controller, jangan lupa include DomPDF. kemudian load data macam kita biasa buat untuk view. Perbezaannya kat sini, kita panggil PDF::loadView('nama_blade', [data]) instead of view().
use Barryvdh\DomPDF\Facade\Pdf;
class ReportController extends Controller{ public function download() { $data = [ 'title' => 'Laporan Bulanan', 'date' => date('d/m/Y'), 'content' => 'Ini contoh report PDF.' ];
$pdf = Pdf::loadView('pdf.report', $data);
return $pdf->download('laporan.pdf'); // download // return $pdf->stream('laporan.pdf'); // terus buka dalam browser }}
untuk gambar dalam output tu, guna public_path('img/logo.png');
tapi kalau kita nak guna asset, kena enable dulu option isRemoteEnabled untuk remote. kat bawah ni contoh code untuk enable gambar guna asset();
// apply option masa create instance $pdf = \PDF::setOptions([ 'isRemoteEnabled' => true, 'defaultFont' => 'sans-serif' ])->loadHTML($pdfView) ->setPaper('a4', 'portrait');
No Comments