DomPDF (Hızlı PDF Çıktıları)
artiframe add dompdf komutu, basit ve temiz HTML/CSS yapılarını inanılmaz bir hızla PDF'e çeviren ünlü dompdf/dompdf kütüphanesini projeye dahil eder.
mPDF'e göre daha hafiftir ancak CSS3 yorumlama standartlarına daha sadıktır.
💡 Bilgilendirme: Direkt Kullanım
ArtiFrame, bu paket için
ArtiFrame, bu paket için
src/Service klasörüne özel bir entegrasyon (Wrapper/Stub) sınıfı kopyalamaz. Kurulum yalnızca Composer üzerinden paketi projeye dahil eder.
Aşağıdaki kodlar, paketin kendi orijinal işleyişini gösteren basit kullanım örnekleridir. Daha fazlası için DomPDF Repository'sini inceleyebilirsiniz.
Kurulum
terminal
$ artiframe add dompdf
Kullanım Örneği
DomPDF, mPDF'den biraz farklı olarak sayfayı önce render (çizim) işleminden geçirir, daha sonra stream (akış) olarak tarayıcıya basar.
ReportController.php
<?php
use Dompdf\Dompdf;
use Dompdf\Options;
// 1. Opsiyonları Belirle (Örn: Çıktı kalitesi, uzaktan resim çekme izni)
$options = new Options();
$options->set('isRemoteEnabled', true); // HTML içinde http:// ile başlayan resimleri indirebilmesi için
// 2. Nesneyi Başlat
$dompdf = new Dompdf($options);
// 3. HTML İçeriği
$html = '
<style>
body { font-family: sans-serif; color: #333; }
h1 { color: #d32f2f; }
</style>
<h1>Satış Raporu</h1>
<p>Bu rapor <b>'.date('Y-m-d').'</b> tarihinde oluşturulmuştur.</p>
';
$dompdf->loadHtml($html);
// 4. (Opsiyonel) Kağıt boyutu ve yönünü ayarla (portrait = Dikey, landscape = Yatay)
$dompdf->setPaper('A4', 'portrait');
// 5. HTML'i PDF belleğine işle
$dompdf->render();
// 6. Tarayıcıya Gönder
// Attachment => 0: Tarayıcıda açar, Attachment => 1: Zorla indirtir
$dompdf->stream("satis-raporu.pdf", ["Attachment" => 0]);