
Docxtemplater
टेम्प्लेट से Word DOCX बनाने और प्रबंधित करने के लिए मुफ्त Node.js लाइब्रेरी
एक अग्रणी ओपन सोर्स Node.js लाइब्रेरी सरल टेम्प्लेट-आधारित दृष्टिकोण के माध्यम से JavaScript API के उपयोग से Word DOCX, XLSX दस्तावेज़ों को गतिशील रूप से बनाना, संपादित करना और नियंत्रित करना संभव बनाती है।
Docxtemplater क्या है?
आज की तेज़-तर्रार डिजिटल दुनिया में, दक्षता अत्यंत महत्वपूर्ण है, विशेषकर दस्तावेज़ प्रबंधन में। चाहे उपयोगकर्ता को अनुबंध तैयार करने, रिपोर्ट बनाने या व्यक्तिगत पत्र तैयार करने की ज़रूरत हो, दस्तावेज़ निर्माण को स्वचालित करने के लिए एक भरोसेमंद टूल होने से उन्हें कीमती समय और संसाधन बचते हैं। यहाँ आता है Docxtemplater, एक शक्तिशाली लाइब्रेरी जो टेम्प्लेट से Word दस्तावेज़ बनाने की प्रक्रिया को सरल बनाती है। यह लाइब्रेरी टेम्प्लेट-आधारित दस्तावेज़ निर्माण सक्षम करती है, जहाँ Word टेम्प्लेट के भीतर प्लेसहोल्डर को वास्तविक डेटा से बदला जाता है ताकि अंतिम आउटपुट दस्तावेज़ तैयार हो सके।
मूल रूप से, Docxtemplater एक शक्तिशाली ओपन सोर्स JavaScript लाइब्रेरी है जो सॉफ़्टवेयर डेवलपर्स को पूर्व-परिभाषित टेम्प्लेट के साथ डेटा को मिलाकर गतिशील Word, Excel और PowerPoint दस्तावेज़ बनाने और प्रबंधित करने की अनुमति देती है। OpenXML फ़ॉर्मेट का उपयोग करके, यह लाइब्रेरी उपयोगकर्ताओं के दस्तावेज़ों की संरचना और सामग्री पर सूक्ष्म नियंत्रण प्रदान करती है, जिससे वे ऐसे प्लेसहोल्डर सम्मिलित कर सकते हैं जो रनटाइम में वास्तविक डेटा से बदले जाएंगे।
Docxtemplater एक बहुमुखी लाइब्रेरी है जो सॉफ़्टवेयर डेवलपर्स को आसानी से दस्तावेज़ निर्माण को स्वचालित करने में सक्षम बनाती है। टेम्प्लेट और डेटा मर्जिंग की शक्ति का उपयोग करके आप अपने दस्तावेज़ वर्कफ़्लो को सरल बना सकते हैं और उत्पादकता में उल्लेखनीय वृद्धि कर सकते हैं। लाइब्रेरी को ठीक से उपयोग करने से सॉफ़्टवेयर डेवलपर्स अपने विशिष्ट आवश्यकताओं के अनुसार गतिशील दस्तावेज़ आसानी से जनरेट कर सकते हैं। चाहे आप दस्तावेज़ निर्माण कार्यों को स्वचालित कर रहे हों या रिपोर्ट को व्यक्तिगत बना रहे हों, Docxtemplater आपके टूलकिट में एक मूल्यवान साधन है।
Docxtemplater कैसे स्थापित करें?
Docxtemplater स्थापित करने के लिए, आप npm, जो JavaScript का पैकेज मैनेजर है, का उपयोग कर सकते हैं। सफल इंस्टॉलेशन के लिए कृपया नीचे दिए गए कमांड्स का उपयोग करें।
npm के माध्यम से Docxtemplater स्थापित करें
npm install --save docxtemplater pizzipNode.js में टेम्प्लेट के माध्यम से Word दस्तावेज़ बनाना
ओपन सोर्स Docxtemplater लाइब्रेरी सॉफ़्टवेयर डेवलपर्स को टेम्प्लेट का उपयोग करके Microsoft Word DOCX दस्तावेज़ आसानी से जनरेट करने में मदद करती है। सॉफ़्टवेयर डेवलपर्स एक ऑब्जेक्ट जिसमें की-वैल्यू पेयर होते हैं, पास करके टेम्प्लेट में गतिशील डेटा इंजेक्ट कर सकते हैं, जिससे प्लेसहोल्डर वास्तविक डेटा से बदलकर अंतिम आउटपुट दस्तावेज़ बनता है। नीचे दिया गया उदाहरण दर्शाता है कि डेवलपर्स मौजूदा टेम्प्लेट को लोड करके Node.js वातावरण के भीतर Word दस्तावेज़ कैसे जनरेट कर सकते हैं।
Node.js के भीतर टेम्प्लेट से Word दस्तावेज़ कैसे जनरेट करें?
const fs = require('fs');
const Docxtemplater = require('docxtemplater');
// Load the template
const content = fs.readFileSync('template.docx', 'binary');
const doc = new Docxtemplater(content);
// Set data to fill placeholders
const data = {
firstName: 'John',
lastName: 'Doe'
};
// Replace placeholders with actual data
doc.setData(data);
// Render the document
doc.render();
// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({type: 'nodebuffer'}));
console.log('Document generated successfully!');
Node.js ऐप्स में कस्टम फ़ंक्शन और फ़िल्टर जोड़ें
Docxtemplater लाइब्रेरी में कस्टम फ़ंक्शन और फ़िल्टर उन्नत क्षमताएँ प्रदान करते हैं जो टेम्प्लेट के भीतर डेटा को मैनिपुलेट करने और विशिष्ट ऑपरेशन्स करने में मदद करती हैं। ये उपयोगकर्ताओं को बुनियादी प्लेसहोल्डर प्रतिस्थापन से आगे लाइब्रेरी की कार्यक्षमता को विस्तारित करने की अनुमति देते हैं, जिससे गतिशील कंटेंट जेनरेशन और जटिल डेटा प्रोसेसिंग संभव हो जाती है। आप अपने टेम्प्लेट में डेटा को मैनिपुलेट करने या विशिष्ट ऑपरेशन्स करने के लिए कस्टम फ़ंक्शन और फ़िल्टर परिभाषित कर सकते हैं। नीचे एक उदाहरण दिया गया है जो दिखाता है कि डेवलपर्स शॉपिंग कार्ट में आइटम की कुल कीमत गणना करने के लिए एक कस्टम फ़ंक्शन और मुद्रा मान को फ़ॉर्मेट करने के लिए फ़िल्टर लागू कर सकते हैं।
कस्टम फ़ंक्शन के माध्यम से शॉपिंग कार्ट में आइटम की कीमतें कैसे गणना करें और मुद्रा मान को फ़ॉर्मेट करने के लिए फ़िल्टर कैसे उपयोग करें?
const fs = require('fs');
const Docxtemplater = require('docxtemplater');
// Define custom function to calculate total price
function calculateTotal(items) {
return items.reduce((total, item) => total + item.price * item.quantity, 0);
}
// Define custom filter to format currency
function formatCurrency(value) {
return '$' + value.toFixed(2); // Format as dollars with 2 decimal places
}
// Load the template
const content = fs.readFileSync('template.docx', 'binary');
const doc = new Docxtemplater(content, {
parser: {
// Define custom tag for invoking functions
getFunction: function(tag) {
if (tag === 'calculateTotal') {
return calculateTotal;
}
},
// Define custom tag for applying filters
getFilter: function(tag) {
if (tag === 'currency') {
return formatCurrency;
}
}
}
});
// Set data with shopping cart items
const data = {
items: [
{ name: 'Product 1', price: 10, quantity: 2 },
{ name: 'Product 2', price: 20, quantity: 1 },
{ name: 'Product 3', price: 15, quantity: 3 }
]
};
// Replace placeholders with actual data
doc.setData(data);
// Render the document
doc.render();
// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({ type: 'nodebuffer' }));
console.log('Document generated successfully!');
रिच फ़ॉर्मैटिंग समर्थन
ओपन सोर्स Docxtemplater Word दस्तावेज़ बनाने और प्रबंधित करने की प्रक्रिया को एक सरल टेम्प्लेट-आधारित दृष्टिकोण प्रदान करके आसान बनाता है। Word दस्तावेज़ों में रिच फ़ॉर्मैटिंग समर्थन का मतलब है कि फ़ॉन्ट शैली, रंग, आकार, अलाइनमेंट आदि विभिन्न स्टाइलिंग गुणों को Word दस्तावेज़ के विभिन्न तत्वों पर लागू करने की क्षमता। इसमें टेक्स्ट, टेबल, इमेज, पैराग्राफ, सेक्शन फ़ॉर्मैटिंग, सूची, बुलेट पॉइंट और अन्य कंटेंट को फ़ॉर्मैट करके पठनीयता और दृश्य आकर्षण बढ़ाना शामिल है। नीचे एक सरल उदाहरण है जो दिखाता है कि दस्तावेज़ के भीतर टेक्स्ट के भाग पर रिच फ़ॉर्मैटिंग कैसे लागू करें।
Node.js एप्लिकेशन में Docxtemplater का उपयोग करके टेक्स्ट पर रिच फ़ॉर्मैटिंग कैसे लागू करें?
// Render the document with custom parser options for rich formatting
doc.render({
parser: {
// Custom tag for interpreting HTML-like tags for rich formatting
tagToken: function(tag) {
return {
tagName: tag.substring(1),
mode: 'open'
};
},
// Apply rich formatting based on tag names
commands: {
b: function(scope, context, tag) {
return {
type: 'applyRichText',
value: { b: true }
};
},
i: function(scope, context, tag) {
return {
type: 'applyRichText',
value: { i: true }
};
},
u: function(scope, context, tag) {
return {
type: 'applyRichText',
value: { u: true }
};
},
strike: function(scope, context, tag) {
return {
type: 'applyRichText',
value: { strike: true }
};
}
}
}
});
// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({ type: 'nodebuffer' }));
console.log('Document generated successfully!');
