गोलांग में पीडीएफ जनरेशन (पीडीएफ)

Golanga Mem Pidi Epha Janaresana Pidi Epha



पोर्टेबल दस्तावेज़ प्रारूप या संक्षेप में पीडीएफ एक अविश्वसनीय रूप से लोकप्रिय और बहुमुखी फ़ाइल प्रारूप है जिसका उपयोग दस्तावेज़ों में किया जाता है। पीडीएफ लगभग सभी प्लेटफार्मों और प्रणालियों में समर्थित है, जो दस्तावेज़ों को साझा करने के लिए इसे एक उत्कृष्ट विकल्प बनाता है।

जब डेवलपर्स की बात आती है, तो हमारे सामने ऐसे उदाहरण आ सकते हैं जहां हमें इनपुट डेटा के आधार पर प्रोग्रामेटिक रूप से पीडीएफ दस्तावेज़ तैयार करने की आवश्यकता होती है। उदाहरण के लिए, आपके पास एक वेब ऐप हो सकता है जो डेटाबेस से खरीदारी की जानकारी के आधार पर पीडीएफ चालान तैयार करता है।

सौभाग्य से, गो पारिस्थितिकी तंत्र विशाल है और पीडीएफ पीढ़ी को खरोंच से निर्माण किए बिना आसानी से करने के लिए उपकरण और सुविधाएं हैं।







इस ट्यूटोरियल में, हम सीखेंगे कि 'एफपीडीएफ' पैकेज का उपयोग कैसे करें जो इनपुट डेटा के आधार पर पीडीएफ दस्तावेज़ उत्पन्न करने के लिए शक्तिशाली सुविधाएं प्रदान करता है।



पर्यावरण सेटअप

आगे बढ़ने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित उपकरण स्थापित हैं:



  1. सुनिश्चित करें कि आपके सिस्टम पर नवीनतम गो कंपाइलर स्थापित है
  2. एक कोड संपादक

गोफपीडीएफ स्थापित करें

एक बार जब आपका प्रोजेक्ट सेटअप हो जाए, तो 'एफपीडीएफ' पैकेज को स्थापित करने के लिए 'गो गेट' कमांड का उपयोग करें।





$ जाना जीथब प्राप्त करें . साथ / जाना - पीडीएफ / एफपीडीएफ

एक बार इंस्टॉल हो जाने पर, हम आगे बढ़ सकते हैं और पीडीएफ जेनरेशन के लिए पैकेज द्वारा प्रदान की गई सुविधाओं को कवर कर सकते हैं।

एक मूल पीडीएफ दस्तावेज़ बनाएं

निम्नलिखित उदाहरण कोड पर विचार करें जो दर्शाता है कि बुनियादी इनपुट टेक्स्ट को देखते हुए एक बुनियादी पीडीएफ बनाने के लिए इस पैकेज का उपयोग कैसे किया जाए।



पैकेट मुख्य

आयात (
'github.com/go-pdf/fpdf'
)

समारोह मुख्य () {
पीडीएफ := एफपीडीएफ . नया ( 'पी' , 'मिमी' , 'ए4' , '' )
पीडीएफ . पृष्ठ जोड़ें ()
पीडीएफ . सेटफ़ॉन्ट ( 'एरियल' , 'बी' , 16 )
पीडीएफ . कक्ष ( 40 , 10 , 'बहुत दर्द हो रहा है...' )
पीडीएफ . आउटपुटफ़ाइलएंडक्लोज़ ( 'lorem.pdf' )
}

दिए गए उदाहरण में, हम उन पैकेजों को आयात करके शुरू करते हैं जिनकी हमें आवश्यकता है। हमारे मामले में, हमें केवल 'fpdf' पैकेज की आवश्यकता है।

इसके बाद, हम fpdf.New() फ़ंक्शन का उपयोग करके एक नया पीडीएफ दस्तावेज़ बनाते हैं और पेज ओरिएंटेशन, माप की इकाई और आकार जैसे पीडीएफ गुणों को निर्दिष्ट करते हैं।

इसके बाद, हम AddPage() फ़ंक्शन का उपयोग करके एक नया पेज जोड़ते हैं।

फिर हम SetFont() फ़ंक्शन का उपयोग करके दस्तावेज़ के लिए फ़ॉन्ट और आकार सेट करने के लिए आगे बढ़ते हैं। हम टेक्स्ट प्रदर्शित करने के लिए सेल() फ़ंक्शन के साथ एक आयताकार क्षेत्र भी जोड़ते हैं, जिसे सेल भी कहा जाता है।

अंत में, हम पीडीएफ तैयार करते हैं और इसे आउटपुटफाइलएंडक्लोज() विधि से सहेजते हैं।

छवियाँ जोड़ें

हम छवियों के लिए समर्थन भी जोड़ सकते हैं जैसा कि निम्नलिखित उदाहरण कोड में दिखाया गया है:

पैकेट मुख्य

आयात (
'github.com/go-pdf/fpdf'
)

समारोह मुख्य () {
पीडीएफ := एफपीडीएफ . नया ( 'पी' , 'मिमी' , 'ए4' , '' )
पीडीएफ . पृष्ठ जोड़ें ()
पीडीएफ . छविविकल्प ( 'linux-tux.png' , 10 , 10 , 40 , 0 , असत्य , एफपीडीएफ . छविविकल्प { छवि प्रकार : 'पीएनजी' , पढ़ेंDpi : सत्य }, 0 , '' )
ग़लती होना := पीडीएफ . आउटपुटफ़ाइलएंडक्लोज़ ( 'example.pdf' )
अगर ग़लती होना != शून्य {
घबड़ाहट ( ग़लती होना )
}
}

इसमें दस्तावेज़ में निर्दिष्ट छवि शामिल होनी चाहिए।

शीर्षलेख और पाद लेख के साथ बहु-पृष्ठ दस्तावेज़

पैकेज कई पेजों का भी समर्थन करता है जिसमें हेडर और फ़ूटर जैसी सुविधाएं शामिल हैं जैसा कि निम्नलिखित उदाहरण में दिखाया गया है:

पैकेट मुख्य

आयात (
'strconv' // strconv पैकेज आयात करें

'github.com/go-pdf/fpdf'
)

समारोह हैडर ( पीडीएफ * एफपीडीएफ . एफपीडीएफ ) {
पीडीएफ . सेटफ़ॉन्ट ( 'एरियल' , 'बी' , 12 )
पीडीएफ . कक्ष ( 0 , 10 , 'पेज हैडर' )
पीडीएफ . एल.एन ( बीस )
}

समारोह FOOTER ( पीडीएफ * एफपीडीएफ . एफपीडीएफ ) {
पीडीएफ . सेटी ( - पंद्रह )
पीडीएफ . सेटफ़ॉन्ट ( 'एरियल' , 'मैं' , 8 )
पीडीएफ . कक्ष ( 0 , 10 , 'पृष्ठ ' + strconv . डूब गया ( पीडीएफ . पृष्ठ सं ()))
}

समारोह मुख्य () {
पीडीएफ := एफपीडीएफ . नया ( 'पी' , 'मिमी' , 'ए4' , '' )
पीडीएफ . SetHeaderFunc ( समारोह () { हैडर ( पीडीएफ ) })
पीडीएफ . सेटफुटरफनक ( समारोह () { FOOTER ( पीडीएफ ) })

पीडीएफ . पृष्ठ जोड़ें ()
पीडीएफ . सेटफ़ॉन्ट ( 'एरियल' , '' , 12 )
के लिए मैं := 0 ; मैं < 40 ; मैं ++ {
पीडीएफ . कक्ष ( 0 , 10 , 'प्रिंटिंग लाइन नंबर' + strconv . डूब गया ( मैं ))
पीडीएफ . एल.एन ( 12 )
}

पीडीएफ . आउटपुटफ़ाइलएंडक्लोज़ ( 'मल्टीपेज.पीडीएफ' )
}

इस मामले में, हम पीडीएफ के इन अनुभागों के लिए सामग्री सेट करने के लिए हेडर और फ़ूटर फ़ंक्शंस को परिभाषित करते हैं।

फिर हम दस्तावेज़ के लिए हेडर और फ़ूटर के रूप में फ़ंक्शंस को निर्दिष्ट करने के लिए SetHeaderFunc और SetFooterFunc का उपयोग करते हैं।

अंत में, हम टेक्स्ट लाइनों की कई लाइनें बनाने के लिए एक लूप का उपयोग करते हैं जिसके परिणामस्वरूप कई पेज बनते हैं। परिणामी पीडीएफ इस प्रकार है:

ये लो!

निष्कर्ष

इस ट्यूटोरियल में, हमने 'एफपीडीएफ' पैकेज का उपयोग करके गो में पीडीएफ जेनरेशन के बारे में बहुत कुछ सीखा। यह पैकेज पीडीएफ उत्पन्न करने के लिए बहुत सारे टूल और सुविधाओं से भरा हुआ है। अधिक जानने के लिए दस्तावेज़ों की जाँच करें।