JavaScript में PDF जनरेशन: pdf-lib लाइब्रेरी

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

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

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

pdf-lib क्या है और इसकी आवश्यकता क्यों है?

pdf-lib JavaScript (Node.js और ब्राउज़र) में PDF दस्तावेज़ बनाने और संपादित करने के लिए एक शक्तिशाली और हल्की लाइब्रेरी है। Puppeteer या jsPDF जैसे भारी समाधानों के विपरीत, pdf-lib को ब्राउज़र वातावरण (Chromium) स्थापित करने की आवश्यकता नहीं होती है और यह विशेष रूप से मूल PDF संरचनाओं के साथ काम करती है। यह सर्वर-साइड रिपोर्ट, चालान, प्रमाणपत्र और किसी भी अन्य दस्तावेज़ों की जनरेशन के लिए आदर्श है, जहां सामग्री (टेक्स्ट, फ़ॉन्ट (एम्बेडिंग सहित), इमेज, फ़ॉर्म, एनोटेशन और पेज) पर पूर्ण नियंत्रण की आवश्यकता होती है।

स्थापना

npm के माध्यम से स्थापना सरल है:

npm install pdf-lib

फिर इसे अपने प्रोजेक्ट में इम्पोर्ट करें:

const { PDFDocument, rgb, StandardFonts } = require('pdf-lib');

मुख्य कार्यक्षमताएँ

  • शुरू से PDF बनाना — पेज, टेक्स्ट, इमेज जोड़ना।
  • मौजूदा PDF को संपादित करना — पेज कॉपी करना, उन पर टेक्स्ट डालना, दस्तावेज़ों को मर्ज करना।
  • फ़ॉन्ट के साथ काम करना — मानक फ़ॉन्ट (Helvetica, TimesRoman) का समर्थन और कस्टम TTF फ़ॉन्ट एम्बेड करना।
  • आकृतियाँ बनाना — रंग और पारदर्शिता सेटिंग के साथ रेखाएँ, आयत, दीर्घवृत्त।
  • फ़ॉर्म और एनोटेशन — टेक्स्ट फ़ील्ड, बटन, लिंक बनाना।
  • Uint8Array में एक्सपोर्ट — परिणाम को फ़ाइल में सहेजा जा सकता है या क्लाइंट को भेजा जा सकता है।

Node.js पर कोड उदाहरण

आइए एक सरल PDF बनाएं जिसमें शीर्षक और एक इमेज हो:

const { PDFDocument, rgb } = require('pdf-lib');const fs = require('fs');

async function createPDF() { const doc = await PDFDocument.create(); const page = doc.addPage([600, 400]); // टेक्स्ट page.drawText('Привет, мир!', { x: 50, y: 350, size: 30, color: rgb(0, 0.53, 0.71), }); // आयत page.drawRectangle({ x: 50, y: 200, width: 200, height: 100, color: rgb(0.9, 0.1, 0.1), borderColor: rgb(0, 0, 0), borderWidth: 2, }); // इमेज एम्बेड करना (PNG) const imageBytes = fs.readFileSync('logo.png'); const image = await doc.embedPng(imageBytes); page.drawImage(image, { x: 300, y: 250, width: 100, height: 100, }); const pdfBytes = await doc.save(); fs.writeFileSync('output.pdf', pdfBytes);}

createPDF().catch(console.error);

pdf-lib का उपयोग कब करें?

pdf-lib सबसे अच्छा विकल्प है यदि आप Node.js (या ब्राउज़र) वातावरण में काम कर रहे हैं और आपको चाहिए:
- ब्राउज़र चलाए बिना तेजी से PDF जनरेट करना (मेमोरी और समय की बचत)।
- कस्टम फ़ॉन्ट एम्बेड करना (उदाहरण के लिए, सिरिलिक के लिए)।
- तैयार PDF को संपादित करना (वॉटरमार्क जोड़ना, दस्तावेज़ों को मर्ज करना)।
- इंटरैक्टिव फ़ॉर्म बनाना।

pdf-lib से बचें यदि आपको जटिल HTML/CSS को PDF में रेंडर करने की आवश्यकता है (इसके लिए Puppeteer बेहतर है) या बड़ी मात्रा में डेटा के साथ काम करना है (भारी PDF प्रदर्शन को धीमा कर सकते हैं)।

```

अनुशंसाएँ