Generate PDF (FPDF)
PHP में PDFs बनाना
PDFs invoices, receipts, admit cards और reports के लिए बढ़िया हैं — ऐसे documents जो हर जगह एक जैसे दिखें और print करने में आसान हों। PHP खुद PDFs नहीं बनाती, तो हम एक छोटी, free library इस्तेमाल करते हैं। दो लोकप्रिय विकल्प हैं FPDF और Dompdf।
Library क्यों चाहिए
PHP में built-in PDF function नहीं है, और PDF format हाथ से बनाना बहुत जटिल है। Library यह सब आपके लिए संभालती है। एक Composer से install कीजिए:
composer require setasign/fpdf
// या
composer require dompdf/dompdf
फिर Composer का autoloader include कीजिए और library की सरल methods इस्तेमाल कीजिए।
FPDF से PDF बनाना
FPDF आपको text और shapes exact positions पर जोड़ने देता है।
<?php
require "vendor/autoload.php";
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont("Arial", "B", 16);
$pdf->Cell(40, 10, "Invoice #1001");
$pdf->Ln();
$pdf->SetFont("Arial", "", 12);
$pdf->Cell(40, 10, "Total: Rs 2500");
$pdf->Output(); // browser में दिखाओ
?>
AddPage page शुरू करता है, SetFont font set करता है, Cell text का box print करता है, और Output PDF भेजता है। यह सटीक, structured layouts के लिए आदर्श है।
Dompdf से HTML to PDF
अगर आपके पास पहले से HTML है, Dompdf उसे सीधे PDF में बदल देता है।
<?php
require "vendor/autoload.php";
use Dompdf\Dompdf;
$dompdf = new Dompdf();
$dompdf->loadHtml("<h1>Invoice #1001</h1><p>Total: Rs 2500</p>");
$dompdf->render();
$dompdf->stream("invoice.pdf");
?>
आप सामान्य HTML और CSS लिखते हैं, और Dompdf उसे PDF के रूप में render करता है। यह तब बढ़िया है जब आपके पास document के लिए पहले से HTML template हो।
आम इस्तेमाल
- Invoices और receipts orders और payments के लिए।
- Admit cards और certificates schools और exams के लिए।
- Reports जैसे sales summaries या attendance।
- Tickets और passes जो users download और print करें।
आम गलतियाँ
- PDF से पहले output। एक फालतू space या echo file corrupt करता है — सिर्फ़ PDF output कीजिए।
- PHP से अकेले करने की उम्मीद। आपको FPDF या Dompdf जैसी library चाहिए।
- Dompdf में जटिल CSS। यह आम CSS support करता है, पर बहुत उन्नत layouts सही render न हों।
- Composer से install न करना। library ठीक से जोड़िए और autoloader include कीजिए।
सारांश
- PDFs बनाने को PHP को library चाहिए — FPDF या Dompdf।
- FPDF text और shapes position से रखता है (सटीक control)।
- Dompdf HTML/CSS को PDF में बदलता है (जाना-पहचाना तरीका)।
- Output को
Output()(FPDF) याstream()(Dompdf), पहले कोई output नहीं। - Invoices, certificates, reports और tickets के लिए बढ़िया।
आगे, data लाइए MySQL से, या इसे दूसरे तरीके से export कीजिए CSV export से।
अक्सर पूछे जाने वाले प्रश्न (FAQ)
क्या PHP खुद PDF files बना सकती है?
FPDF और Dompdf में क्या अंतर है?
PDF को browser में कैसे output करूँ?
$pdf->Output(); Dompdf के साथ $dompdf->stream() call कीजिए। आप इसे browser में inline दिखा सकते हैं या download मजबूर कर सकते हैं, और इससे पहले कोई और output नहीं होना चाहिए।