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

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

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

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

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

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

स्थापना

Node.js प्रोजेक्ट में स्थापित करने के लिए निम्न कमांड चलाएँ:

npm install pdf-lib

लाइब्रेरी में कोई मूल निर्भरता नहीं है और यह Node.js 10+ के साथ संगत है।

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

  • शून्य से PDF बनाना (खाली पृष्ठ, टेक्स्ट, चित्र, फ़ॉन्ट एम्बेड करना)।
  • मौजूदा PDF को संपादित करना (पृष्ठ निकालना, सम्मिलित करना, हटाना, घुमाना)।
  • फ़ॉर्म के साथ काम करना (फ़ील्ड भरना, चेकबॉक्स और रेडियो बटन बनाना)।
  • Unicode और कस्टम फ़ॉन्ट (TTF, OTF) के लिए समर्थन।
  • मेटाडेटा जोड़ना (लेखक, शीर्षक, दिनांक)।
  • ArrayBuffer, Uint8Array या Blob में निर्यात करना।

JavaScript (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), }); // फ़ॉन्ट एम्बेड करें (वैकल्पिक) const fontBytes = fs.readFileSync('./fonts/roboto.ttf'); const font = await doc.embedFont(fontBytes); page.drawText('Кастомный шрифт', { x: 50, y: 300, size: 20, font: font, }); // सेव करें const pdfBytes = await doc.save(); fs.writeFileSync('output.pdf', pdfBytes); console.log('PDF बन गया!');}

createPDF().catch(console.error);

यह कोड दो पंक्तियों वाला एक दस्तावेज़ बनाता है, जिनमें से एक एम्बेडेड फ़ॉन्ट का उपयोग करती है। चित्रों के साथ काम करने के लिए doc.embedPng() या doc.embedJpg() का उपयोग करें।

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

  • आपको ब्राउज़र चलाए बिना जल्दी से PDF जनरेट करने की आवश्यकता है।
  • दस्तावेज़ में जटिल लेआउट (तालिकाएँ, कॉलम) नहीं है - इसके लिए Puppeteer जैसे टेम्पलेट इंजन बेहतर हैं।
  • न्यूनतम आकार (~500 KB) वाली हल्की लाइब्रेरी की आवश्यकता है।
  • आप फ़ॉर्म के साथ काम कर रहे हैं या मौजूदा PDF को संपादित कर रहे हैं।

निष्कर्ष

pdf-lib उन प्रोजेक्ट्स के लिए एक उत्कृष्ट विकल्प है जहाँ बिना अतिरिक्त निर्भरताओं के Node.js पर PDF जनरेशन की आवश्यकता होती है। यह सीखने में आसान, अच्छी तरह से प्रलेखित है और सभी बुनियादी संचालनों का समर्थन करता है। जटिल लेआउट के लिए Puppeteer या jsPDF पर विचार करें, लेकिन 80% कार्यों के लिए pdf-lib पर्याप्त से अधिक होगी।

```

अनुशंसाएँ