PHP में PDF रिपोर्ट जनरेशन: डेवलपर के लिए संपूर्ण गाइड
PDF दस्तावेज़ बनाना वेब डेवलपमेंट में सबसे ज़रूरी कार्यों में से एक है। रिपोर्ट, इनवॉइस, सर्टिफिकेट, शैक्षिक सामग्री - इन सभी को सर्वर साइड पर डायनामिक रूप से जनरेट करने की आवश्यकता होती है। PHP में कई शक्तिशाली लाइब्रेरी हैं जो किसी भी जटिलता का PDF बना सकती हैं। इस लेख में हम चार लोकप्रिय टूल्स: TCPDF, FPDF, Dompdf और mPDF को विस्तार से समझेंगे, साथ ही प्रैक्टिकल कोड उदाहरण भी देंगे।
PHP में PDF जनरेशन क्यों ज़रूरी है?
PDF (Portable Document Format) एक यूनिवर्सल फॉर्मेट है जो किसी भी डिवाइस पर सही ढंग से दिखता है। PythonLib जैसे शैक्षिक प्रोजेक्ट्स में PDF रिपोर्ट का उपयोग इसके लिए किया जा सकता है:
- टेस्ट और परीक्षा के परिणाम एक्सपोर्ट करना
- कोर्स पूरा करने के सर्टिफिकेट बनाना
- शैक्षिक सामग्री और नोट्स जनरेट करना
- शिक्षकों के लिए सांख्यिकीय रिपोर्ट तैयार करना
लोकप्रिय लाइब्रेरी का परिचय
1. TCPDF
TCPDF PHP में PDF के साथ काम करने के लिए सबसे शक्तिशाली और परिपक्व लाइब्रेरी में से एक है। यह सपोर्ट करती है:
- PDF 1.7 की पूरी क्षमताएं
- फ़ॉन्ट एम्बेड करना (Unicode और देवनागरी सहित)
- ग्राफ़, टेबल, QR-कोड बनाना
- CSS सपोर्ट (सीमित)
बेसिक उपयोग का उदाहरण:
require_once('tcpdf/tcpdf.php');
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);
$pdf->SetCreator('PythonLib');
$pdf->SetAuthor('डेवलपर');
$pdf->SetTitle('टेस्टिंग रिपोर्ट');
$pdf->AddPage();
$pdf->SetFont('dejavusans', '', 14);
$pdf->Cell(0, 10, 'नमस्ते दुनिया! यह PDF रिपोर्ट है।', 0, 1, 'C');
$pdf->Output('report.pdf', 'I');
2. FPDF
FPDF एक हल्की और तेज़ लाइब्रेरी है, जो सरल दस्तावेज़ों के लिए आदर्श है। इसकी मुख्य विशेषताएं:
- बाहरी डिपेंडेंसी की आवश्यकता नहीं
- टेक्स्ट, इमेज और लाइन जोड़ने के लिए सरल API
- अतिरिक्त पैकेज के माध्यम से UTF-8 सपोर्ट
टेबल बनाने का उदाहरण:
require('fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial', 'B', 16);
$pdf->Cell(40, 10, 'नाम', 1);
$pdf->Cell(40, 10, 'अंक', 1);
$pdf->Ln();
$pdf->SetFont('Arial', '', 12);
$pdf->Cell(40, 10, 'राहुल', 1);
$pdf->Cell(40, 10, '95', 1);
$pdf->Output();
3. Dompdf
Dompdf HTML+CSS को PDF में बदलने की सुविधा देता है। यह तब उपयोगी है जब आप पहले से टेम्पलेट इंजन (जैसे Twig) का उपयोग कर रहे हों। क्षमताएं:
- CSS 2.1 और आंशिक CSS3 सपोर्ट
- इमेज और फ़ॉन्ट के साथ काम करना
- वेब एप्लिकेशन में आसान इंटीग्रेशन
HTML टेम्पलेट के साथ उदाहरण:
use Dompdf\Dompdf;
$dompdf = new Dompdf();
$html = '<h2 style="color:blue;">Python कोर्स रिपोर्ट</h2>
<p>छात्र: अमित, परिणाम: 87%</p>';
$dompdf->loadHtml($html, 'UTF-8');
$dompdf->setPaper('A4', 'portrait');
$dompdf->render();
$dompdf->stream('report.pdf');
4. mPDF
mPDF HTML को PDF में बदलने वाली एक और लाइब्रेरी है। यह जटिल स्टाइल, Unicode और यह भी सपोर्ट करती है:
- स्वचालित विषय-सूची निर्माण
- वॉटरमार्क और बैकग्राउंड
- बड़े डेटा सेट के साथ काम करना
स्टाइल शीट के साथ उदाहरण:
require_once __DIR__ . '/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML('<h1>सांख्यिकी</h1> पुस्तकालय में भी
Go (Golang) में SMS भेजना: golang-sms API लाइब्रेरी गाइड
Node.js में ZIP-आर्काइव के साथ काम करना: archiver और adm-zip लाइब्रेरी
Node.js के लिए WebSocket लाइब्रेरीज़: ws, Socket.IO, uWS — पूर्ण समीक्षा
TypeScript में HTML पार्सिंग: लाइब्रेरीज़, टूल्स और उदाहरण
C++ में OpenCV से इमेज प्रोसेसिंग: resize और crop करना सीखें