PDFKit JavaScript (Node.js): पूर्ण गाइड उदाहरणों के साथ

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

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

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

PDFKit का परिचय

PDFKit एक शक्तिशाली और लचीली लाइब्रेरी है जो JavaScript (Node.js) का उपयोग करके सर्वर-साइड PDF दस्तावेज़ जनरेट करने के लिए बनाई गई है। यह डेवलपर्स को PDF बनाने की पूरी प्रक्रिया पर नियंत्रण देती है: साधारण टेक्स्ट दस्तावेज़ों से लेकर टेबल, इमेज, ग्राफिक्स और इंटरैक्टिव एलिमेंट्स वाली जटिल मल्टी-पेज रिपोर्ट तक। PDFKit को PhantomJS या Puppeteer जैसी अतिरिक्त डिपेंडेंसी की ज़रूरत नहीं है और यह पूरी तरह से शुद्ध JavaScript पर काम करता है, जो इसे हाई-लोड सर्वर एप्लिकेशन के लिए एक आदर्श विकल्प बनाता है।

इस लाइब्रेरी की ज़रूरत क्यों है? आधुनिक वेब डेवलपमेंट में अक्सर प्रोग्रामेटिक रूप से PDF दस्तावेज़ जनरेट करने की आवश्यकता होती है: इनवॉइस, चालान, रिपोर्ट, सर्टिफिकेट, कॉन्ट्रैक्ट। PDFKit इस समस्या को सुंदर और कुशलता से हल करता है। HTML-to-PDF कन्वर्टर्स के विपरीत, जो धीमे और अप्रत्याशित हो सकते हैं, PDFKit आपको PDF मॉडल तक सीधी पहुँच देता है: आप स्वयं प्रत्येक एलिमेंट के कोऑर्डिनेट निर्धारित करते हैं, फ़ॉन्ट, रंग और पेज लेआउट को नियंत्रित करते हैं। यह विशेष रूप से तब महत्वपूर्ण होता है जब सटीक पोजिशनिंग या गैर-मानक फ़ॉर्मेट के साथ काम करना हो।

यह लाइब्रेरी समुदाय द्वारा सक्रिय रूप से समर्थित है, इसकी विस्तृत डॉक्यूमेंटेशन है और दुनिया भर की हज़ारों कंपनियाँ इसे प्रोडक्शन एनवायरनमेंट में उपयोग करती हैं। PDFKit PDF फ़ॉर्मेट की सभी प्रमुख सुविधाओं का समर्थन करता है: फ़ॉन्ट एम्बेड करना (हिंदी सहित), इमेज (JPEG, PNG, SVG) के साथ काम करना, एनोटेशन, हाइपरलिंक, बुकमार्क बनाना, साथ ही दस्तावेज़ एन्क्रिप्शन। मॉड्यूलर आर्किटेक्चर और स्ट्रीमिंग राइटिंग की सुविधा के कारण, PDFKit छोटे दस्तावेज़ों से लेकर मल्टी-गीगाबाइट PDF फ़ाइलों तक सब कुछ बनाने के लिए उपयुक्त है।

PDFKit की स्थापना (Installation)

PDFKit npm पैकेज मैनेजर के माध्यम से वितरित किया जाता है। इसे स्थापित करने के लिए मानक कमांड का उपयोग करें:

npm install pdfkit

TypeScript के साथ काम करने के लिए अतिरिक्त टाइप्स स्थापित करने की आवश्यकता हो सकती है:

npm install pdfkit @types/pdfkit

यदि आप Yarn का उपयोग कर रहे हैं:

yarn add pdfkit

स्थापना के बाद, लाइब्रेरी उपयोग के लिए तैयार है। किसी अतिरिक्त डिपेंडेंसी या सिस्टम आवश्यकता की ज़रूरत नहीं है — यह Node.js (Windows, macOS, Linux) को सपोर्ट करने वाले किसी भी प्लेटफ़ॉर्म पर "आउट ऑफ़ द बॉक्स" काम करता है।

त्वरित शुरुआत: न्यूनतम कार्यशील उदाहरण

hello-pdf.js नामक फ़ाइल बनाएँ और उसमें निम्नलिखित कोड जोड़ें:

const PDFDocument = require('pdfkit');
const fs = require('fs');

// एक नया PDF दस्तावेज़ बनाएँ
const doc = new PDFDocument();

// परिणाम को कहाँ सहेजना है, यह निर्दिष्ट करें
doc.pipe(fs.createWriteStream('hello.pdf'));

// टेक्स्ट जोड़ें
doc.fontSize(25)
   .text('नमस्ते, दुनिया!', 100, 100);

// दस्तावेज़ समाप्त करें
doc.end();

console.log('PDF बनाया गया: hello.pdf');

स्क्रिप्ट चलाएँ:

node hello-pdf.js

वर्तमान डायरेक्टरी में hello.pdf नामक फ़ाइल बनेगी जिसमें "नमस्ते, दुनिया!" टेक्स्ट होगा। यह उदाहरण PDFKit के साथ काम करने के मूल सिद्धांत को दर्शाता है: दस्तावेज़ बनाना, सामग्री जोड़ना और परिणाम सहेजना।

PDFKit के मुख्य तरीके और क्लासेस

PDFKit PDF दस्तावेज़ों के साथ काम करने के लिए एक समृद्ध API प्रदान करता है। आइए उन मुख्य तरीकों पर नज़र डालें जो दैनिक डेवलपमेंट में काम आएँगे।

1. new PDFDocument(options) — दस्तावेज़ कंस्ट्रक्टर

सिग्नेचर: new PDFDocument([options])

विवरण: एक नया PDF दस्तावेज़ इंस्टेंस बनाता है। options पैरामीटर एक ऑब्जेक्ट है जो पेज साइज़, मार्जिन, ओरिएंटेशन, मेटाडेटा और अन्य सेटिंग्स निर्धारित करने की अनुमति देता है।

const doc = new PDFDocument({
  size: 'A4',              // पेज का आकार (A4, Letter, Legal आदि)
  layout: 'portrait',      // ओरिएंटेशन: 'portrait' या 'landscape'
  margins: {               // मार्जिन                    

अनुशंसाएँ