मुफ़्त JavaScript API के ज़रिए पीडीएफ़ फ़ाइलें बनाना
ओपन सोर्स प्योर जावास्क्रिप्ट लाइब्रेरी पीडीएफ दस्तावेज़ निर्माण और नोड और वेब ब्राउज़र के लिए हेरफेर का समर्थन करती है।
पीडीएफमेक एक बहुत शक्तिशाली ओपन सोर्स जावास्क्रिप्ट लाइब्रेरी है जो सॉफ्टवेयर डेवलपर्स को जावास्क्रिप्ट कमांड का उपयोग करके पीडीएफ दस्तावेज़ निर्माण और हेरफेर से संबंधित कार्यों को संभालने में सक्षम बनाता है। पुस्तकालय के बारे में सबसे अच्छी बात यह है कि आप दस्तावेज़ परिभाषा ऑब्जेक्ट प्रारूप का उपयोग करके पीडीएफ पीढ़ी के लिए आसानी से डेटा निर्दिष्ट कर सकते हैं।
पीडीएफमेक लाइब्रेरी ने पीडीएफ दस्तावेज़ प्रबंधन से संबंधित कई महत्वपूर्ण विशेषताओं के लिए समर्थन शामिल किया है जैसे कि पीडीएफ दस्तावेज़ों में छवियों और पाठ सामग्री को जोड़ना, लाइन रैपिंग, टेक्स्ट संरेखण, तालिकाओं को सम्मिलित करना और प्रबंधित करना, शैलियों का उपयोग करना, पृष्ठ शीर्षलेख और पाद लेख जोड़ना, पृष्ठ अभिविन्यास, और मार्जिन समर्थन, फ़ॉन्ट, और ग्राफिक्स एम्बेडिंग, सामग्री निर्माण की तालिकाएं, पृष्ठ विराम समर्थन और बहुत कुछ।
पुस्तकालय बहुत स्थिर है और क्लाइंट के साथ-साथ सर्वर-साइड पर भी आसानी से उपयोग किया जा सकता है। यह ब्राउज़र में और Node.js में चलाने योग्य है। इसमें इंटरनेट एक्सप्लोरर 10+, एज 12+, फ़ायरफ़ॉक्स, क्रोम, ओपेरा, सफारी, आदि जैसे कई लोकप्रिय ब्राउज़रों के लिए समर्थन शामिल है।
PDFMake के साथ शुरुआत करना
PDFMake npm पर उपलब्ध है, आप इसे आसानी से डाउनलोड कर सकते हैं और इसे अपनी मशीन पर स्थापित कर सकते हैं। सुचारू स्थापना के लिए कृपया निम्न आदेश का उपयोग करें।
बोवर का उपयोग करके पीडीएफमेक स्थापित करें
bower install pdfmake
जावास्क्रिप्ट लाइब्रेरी का उपयोग करके पीडीएफ फाइलें जेनरेट करें
ओपन सोर्स जावास्क्रिप्ट लाइब्रेरी पीडीएफमेक सॉफ्टवेयर प्रोग्रामर के लिए जावास्क्रिप्ट कोड का उपयोग करके अपने स्वयं के अनुप्रयोगों के अंदर पीडीएफ दस्तावेज़ उत्पन्न करना आसान बनाता है। पुस्तकालय ने पीडीएफ फाइलों के साथ काम करने के लिए सुविधाओं का एक पूरा सेट दिया है, जैसे आकार, रंग और स्वरूपण के साथ फ़ॉन्ट प्रकार चुनना, एक नया पृष्ठ जोड़ना, कॉलम सम्मिलित करना, शैलियों को जोड़ना और लागू करना, टेबल सम्मिलित करना, अवांछित पृष्ठों को हटाना, और कई अधिक।
पीडीएफ फाइल में हेडर और फुटर जोड़ें
शीर्षलेख और पादलेख पीडीएफ दस्तावेज़ों के बहुत उपयोगी भाग हैं और सामग्री के उस हिस्से को शामिल करने के लिए उपयोग किया जा सकता है जिसे उपयोगकर्ता दस्तावेज़ के प्रत्येक पृष्ठ पर दिखाना चाहते हैं जैसे लेखक का नाम, दस्तावेज़ शीर्षक, पृष्ठ संख्या, लोगो, और बहुत कुछ। जावास्क्रिप्ट पुस्तकालय पीडीएफमेक ने एक पीडीएफ दस्तावेज़ में शीर्षलेख और पादलेख जोड़ने और संशोधित करने के लिए पूर्ण समर्थन प्रदान किया है। यह दोहराए जाने वाले शीर्षलेख/पाद लेख जोड़ने, शीर्षलेख/पाद लेख में छवियों को सम्मिलित करने, पृष्ठ संख्या जोड़ने, और बहुत कुछ जैसी सुविधाओं का समर्थन करता है।
जावास्क्रिप्ट के माध्यम से पीडीएफ में हेडर और फुटर
var docDefinition = {
header: 'simple text',
footer: {
columns: [
'Left part',
{ text: 'Right part', alignment: 'right' }
]
},
content: (...)
};
पीडीएफ फाइलों में इमेज इंसर्ट करना
ओपन सोर्स जावास्क्रिप्ट लाइब्रेरी पीडीएफमेक ने जावास्क्रिप्ट कमांड का उपयोग करके पीडीएफ फाइलों के अंदर छवियों को जोड़ने और संशोधित करने के लिए पूर्ण समर्थन प्रदान किया है। पुस्तकालय ने छवि की चौड़ाई और ऊंचाई निर्धारित करने, एक आयत के अंदर एक छवि को फिट करने, URL के माध्यम से एक छवि को कॉल करने, छवि को आनुपातिक रूप से स्केल करने और छवि को खींचने के लिए सुविधाएँ प्रदान की हैं। यदि आप एक ही छवि को एकाधिक नोड्स में उपयोग करना चाहते हैं, तो आपको इसे छवि शब्दकोश में रखना होगा और बस इसे इसके नाम से कॉल करना होगा।
जावास्क्रिप्ट के माध्यम से पीडीएफ में छवियां जोड़ें
var docDefinition = {
content: [
{
// you'll most often use dataURI images on the browser side
// if no width/height/fit is provided, the original size will be used
image: 'data:image/jpeg;base64,...encodedContent...'
},
{
// if you specify width, image will scale proportionally
image: 'data:image/jpeg;base64,...encodedContent...',
width: 150
},
{
// if you specify both width and height - image will be stretched
image: 'data:image/jpeg;base64,...encodedContent...',
width: 150,
height: 150
},
{
// you can also fit the image inside a rectangle
image: 'data:image/jpeg;base64,...encodedContent...',
fit: [100, 100]
},
{
// if you reuse the same image in multiple nodes,
// you should put it to to images dictionary and reference it by name
image: 'mySuperImage'
},
{
image: 'myImageDictionary/image1.jpg'
},
{
// in browser is supported loading images via url from reference by name in images
image: 'snow'
},
{
image: 'strawberries'
},
],
images: {
mySuperImage: 'data:image/jpeg;base64,...content...',
snow: 'https://picsum.photos/seed/picsum/200/300',
strawberries: {
url: 'https://picsum.photos/id/1080/367/267'
headers: {
myheader: '123',
myotherheader: 'abc',
}
}
}
};
पेज ओरिएंटेशन और मार्जिन सपोर्ट
फ्री जावास्क्रिप्ट लाइब्रेरी पीडीएफमेक में पेज साइज, पेज ओरिएंटेशन और साथ ही जावास्क्रिप्ट एप्स के अंदर पेज मार्जिन सेट करने के लिए सपोर्ट शामिल है। पृष्ठ का आकार निर्धारित करने के लिए आपको नए पृष्ठ की चौड़ाई और ऊंचाई प्रदान करनी होगी। डिफ़ॉल्ट रूप से, लाइब्रेरी पोर्ट्रेट पेज ओरिएंटेशन का उपयोग करती है, लेकिन इसे आसानी से वन-लाइनर कोड के साथ लैंडस्केप पर सेट कर सकती है। यह पेज मार्जिन सेट करने के लिए भी सहायता प्रदान करता है और उपयोगकर्ताओं को पेज ब्रेक को गतिशील रूप से नियंत्रित करने की अनुमति देता है। यह लेफ्ट, टॉप, राइट, बॉटम के साथ-साथ हॉरिजॉन्टल और वर्टिकल मार्जिन को सपोर्ट करता है।
कंपाइलर के लिए लाइब्रेरी बनाएँ
var dd = {
content: [
{
stack: [
'This header has both top and bottom margins defined',
{text: 'This is a subheader', style: 'subheader'},
],
style: 'header'
},
{
text: [
'Margins have slightly different behavior than other layout properties. They are not inherited, unlike anything else. They\'re applied only to those nodes which explicitly ',
'set margin or style property.\n',
]
},
{
text: 'This paragraph (consisting of a single line) directly sets top and bottom margin to 20',
margin: [0, 20],
},
{
stack: [
{text: [
'This line begins a stack of paragraphs. The whole stack uses a ',
{text: 'superMargin', italics: true},
' style (with margin and fontSize properties).',
]
},
{text: ['When you look at the', {text: ' document definition', italics: true}, ', you will notice that fontSize is inherited by all paragraphs inside the stack.']},
'Margin however is only applied once (to the whole stack).'
],
style: 'superMargin'
},
],
styles: {
header: {
fontSize: 18,
bold: true,
alignment: 'right',
margin: [0, 190, 0, 80]
},
subheader: {
fontSize: 14
},
superMargin: {
margin: [20, 0, 40, 0],
fontSize: 15
}
}
}
जावास्क्रिप्ट के माध्यम से पीडीएफ में टेबल डालें
ओपन सोर्स लाइब्रेरी पीडीएफमेक कंप्यूटर प्रोग्रामर को पीडीएफ फाइलों के अंदर टेबल डालने और अपडेट करने में सक्षम बनाता है। पुस्तकालय तालिका की पंक्तियों के स्तंभों और कोशिकाओं को संभालने के लिए विभिन्न उन्नत सुविधाओं का समर्थन करता है। इसमें टेबल एलाइनमेंट के लिए सपोर्ट, स्टाइल टेबल बॉर्डर, प्रतिशत में चौड़ाई को परिभाषित करना, टेबल को घुमाना, नए पेज पर टेबल हैडर रो को परिभाषित करना और बहुत कुछ शामिल है।
कंपाइलर के लिए लाइब्रेरी बनाएँ
var docDefinition = {
content: [
{
layout: 'lightHorizontalLines', // optional
table: {
// headers are automatically repeated if the table spans over multiple pages
// you can declare how many rows should be treated as headers
headerRows: 1,
widths: [ '*', 'auto', 100, '*' ],
body: [
[ 'First', 'Second', 'Third', 'The last one' ],
[ 'Value 1', 'Value 2', 'Value 3', 'Value 4' ],
[ { text: 'Bold value', bold: true }, 'Val 2', 'Val 3', 'Val 4' ]
]
}
}
]
};
pdfMake.createPdf(docDefinition, tableLayouts, fonts, vfs)
// tableLayouts, fonts and vfs are all optional - falsy values will cause