DomPDF PHP: पूर्ण गाइड, उदाहरण और ट्यूटोरियल

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

DomPDF का परिचय: यह क्या है और क्यों ज़रूरी है

DomPDF PHP भाषा के लिए एक शक्तिशाली और लोकप्रिय लाइब्रेरी है, जो HTML मार्कअप से PDF दस्तावेज़ जनरेट करने के लिए बनाई गई है। इस लाइब्रेरी का मुख्य विचार यह है कि डेवलपर्स वेब डिज़ाइन की परिचित तकनीकों - HTML, CSS और JavaScript (सीमित रूप में) का उपयोग करके PDF फ़ाइलें बना सकें। FPDF या TCPDF जैसी जटिल लो-लेवल API सीखने के बजाय, आप बस एक HTML टेम्पलेट लिख सकते हैं, उसे CSS से सजा सकते हैं और DomPDF को कन्वर्ट करने के लिए दे सकते हैं।

यह लाइब्रेरी DOMPDF (इसी से नाम पड़ा) पर आधारित रेंडरिंग इंजन का उपयोग करती है, जो HTML और CSS को पार्स करके पेज का विज़ुअल प्रतिनिधित्व बनाती है और फिर उसे PDF फॉर्मेट में एक्सपोर्ट करती है। DomPDF अधिकांश मानक CSS प्रॉपर्टीज़ को सपोर्ट करता है, जिसमें पोज़िशनिंग, float, flexbox (आंशिक रूप से), फ़ॉन्ट, इमेज और टेबल के साथ काम करना शामिल है।

इस लाइब्रेरी की ज़रूरत क्यों है?

  • रिपोर्ट ऑटोमेशन: डेटाबेस से डेटा के आधार पर इनवॉइस, रसीद, चालान और बिज़नेस प्रस्ताव बनाना।
  • सर्टिफिकेट और डिप्लोमा जनरेट करना: नाम, तारीख, कोर्स जैसे अनोखे डेटा के साथ वैयक्तिकृत दस्तावेज़ तुरंत तैयार करना।
  • ई-बुक और मैनुअल बनाना: डाउनलोड के लिए HTML कंटेंट को अच्छी तरह फॉर्मेटेड PDF में बदलना।
  • वेब पेज सेव करना: साइट पर किसी भी कंटेंट के लिए "PDF के रूप में सेव करें" फीचर।
  • CMS के साथ इंटीग्रेशन: WordPress, Laravel, Symfony और अन्य फ्रेमवर्क डॉक्यूमेंट जनरेट करने के लिए DomPDF का सक्रिय रूप से उपयोग करते हैं।

DomPDF का दूसरे विकल्पों से मुख्य लाभ इसकी सरलता है। अगर आप HTML और CSS जानते हैं, तो आप 80% तक DomPDF के साथ काम करना पहले से जानते हैं।

DomPDF की स्थापना (इंस्टॉलेशन)

आधुनिक PHP प्रोजेक्ट में DomPDF की स्थापना Composer डिपेंडेंसी मैनेजर के माध्यम से की जाती है। यह PHP लाइब्रेरीज़ के लिए मानक तरीका है।

सुनिश्चित करें कि आपके पास Composer स्थापित है। फिर अपने प्रोजेक्ट की रूट डायरेक्टरी में यह कमांड चलाएँ:

composer require dompdf/dompdf

सफल स्थापना के बाद, आपके प्रोजेक्ट में vendor फ़ोल्डर बन जाएगा, और composer.json फ़ाइल में डिपेंडेंसी की एक लाइन जुड़ जाएगी। अगर आप किसी फ्रेमवर्क (Laravel, Symfony) का उपयोग कर रहे हैं, तो स्थापना थोड़ी भिन्न हो सकती है (जैसे सर्विस प्रोवाइडर के माध्यम से), लेकिन मूल कमांड वही रहती है।

महत्वपूर्ण: DomPDF के लिए PHP संस्करण 7.1 या उससे ऊपर आवश्यक है। मल्टीबाइट एन्कोडिंग (UTF-8) के साथ सही काम करने के लिए PHP एक्सटेंशन mbstring स्थापित करने की भी सिफारिश की जाती है।

स्थापना की जाँच करने के लिए, test.php फ़ाइल बनाएँ और उसमें निम्नलिखित कोड जोड़ें:

<?php
require_once 'vendor/autoload.php'; // Composer ऑटोलोडर को शामिल करें

use Dompdf\Dompdf;

$dompdf = new Dompdf();
$dompdf->loadHtml('<h1>Hello World</h1>');
$dompdf->render();
$dompdf->stream("test.pdf");

?>

अगर ब्राउज़र में फ़ाइल खोलने पर "Hello World" लिखा हुआ PDF डाउनलोड होता है, तो स्थापना सफल है।

त्वरित शुरुआत: पहला PDF दस्तावेज़

चलिए एक सरल लेकिन पूर्ण उदाहरण बनाते हैं। हम एक टेबल और स्टाइल के साथ PDF फ़ाइल जनरेट करेंगे।

<?php
require_once 'vendor/autoload.php';

use Dompdf\Dompdf;
use Dompdf\Options;

// 1. विकल्प सेट करना (वैकल्पिक)
$options = new Options();
$options->set('defaultFont', 'DejaVu Sans'); // यूनिकोड सपोर्ट वाला फ़ॉन्ट
$options->set('isRemoteEnabled', true); // बाहरी इमेज लोड करने की अनुमति

// 2. Dompdf का इंस्टेंस बनाएँ
$dompdf = new Dompdf($options);

// 3. HTML कंटेंट
$html = '
<!DOCTYPE html>
<html>
<head>
    <style>
        body { font-family: DejaVu Sans, sans-serif; }
        h1 { color: #2c3e50; text-align: center; }
        tabl                    

अनुशंसाएँ