पायथन में PDF उत्पन्न करना

मेरा पसंदीदा लाइब्रेरी pdf-reports है।

Page content

PDF रिपोर्ट बनाने के लिए पायथन का उपयोग करना

पायथन, अपने व्यापक पुस्तकालयों और मॉड्यूल्स के साथ, पेशेवर PDF रिपोर्ट बनाने के शक्तिशाली उपकरण प्रदान करता है।

इस गाइड में, पायथन के उपयोग से PDF दस्तावेज बनाने के तरीकों के बारे में विस्तार से चर्चा की गई है, जिसमें रिपोर्टलैब, एफपीडीएफ, एक्सएचटीएमएलटूपीडीएफ, वीज़ा प्रिंट, जिन्जा2, पीडीएफ-रिपोर्ट्स और पीडीएफकिट जैसे लोकप्रिय पुस्तकालयों का शामिल करते हैं।

पायथन रिपोर्ट पर

क्यों पायथन के साथ PDF रिपोर्ट बनाएं?

  • स्वचालन: पायथन स्क्रिप्ट रिपोर्ट उत्पादन को स्वचालित कर सकते हैं, समय बचाते हुए और मानव त्रुटि को कम करते हुए।
  • अनुकूलन: विशिष्ट आवश्यकताओं के अनुसार रिपोर्ट को अनुकूलित करें और पाठ, चित्र, तालिकाएं और ग्राफ जोड़ें।
  • संगतता: मानकीकृत टेम्पलेट के साथ रिपोर्ट में ब्रैंडिंग संगतता सुनिश्चित करें।
  • विविधता: फैक्टर, व्यवसाय रिपोर्ट, डेटा सारांश या कोई भी अन्य दस्तावेज प्रकार बनाएं।

PDF उत्पादन के लिए लोकप्रिय पायथन पुस्तकालय

रिपोर्टलैब

रिपोर्टलैब एक विविध पुस्तकालय है जो आपको PDF दस्तावेजों को कार्यक्रमात्मक रूप से बनाने की अनुमति देता है। यह पाठ, चित्र, तालिकाएं और ग्राफ जोड़ने के समर्थन के साथ विभिन्न प्रकार के रिपोर्ट के लिए उपयुक्त है।

लाभ:

  • समृद्ध विशेषता सेट
  • आसान उपयोग के लिए उच्च स्तरीय API
  • टिप्पणियों और सक्रिय फॉर्म जैसी उन्नत विशेषताओं का समर्थन

कमियां:

  • अन्य पुस्तकालयों की तुलना में अधिक जटिल सीखने की लहर
  • कुछ कार्यों के लिए कम समझदार API

रिपोर्टलैब का उपयोग करना

इस्तामल: पायथन के रिपोर्टलैब को पाइप के उपयोग से इस्तामल करें:

pip install reportlab

आधारीय सेटअप:

from reportlab.pdfgen import canvas
c = canvas.Canvas('hello.pdf')
# पाठ जोड़ना:
python c.drawString(100, 800, "Hello World")
# PDF को सहेजें:
python c.save()

FPDF

FPDF एक सरल लेकिन शक्तिशाली PDF दस्तावेज बनाने के पुस्तकालय है जो शुद्ध पायथन में लिखा गया है। यह न्यूनतम कोड के साथ बुनियादी PDF दस्तावेज बनाने के लिए आदर्श है।

लाभ:

  • सीखना आसान और उपयोग करना
  • हल्का और तेज
  • यूनिकोड के अक्षरों का समर्थन

कमियां:

  • रिपोर्टलैब की तुलना में सीमित विशेषता सेट
  • पृष्ठ पर तत्वों के स्थान के लिए कम नियंत्रण

FPDF का उपयोग करना

इस्तामल: FPDF को पाइप के उपयोग से इस्तामल करें:

pip install fpdf2
आधारीय सेटअप:
from fpdf import FPDF pdf = FPDF()

# पाठ जोड़ना:
python pdf.add_page()
pdf.set_font('Arial', 'B', 16)
pdf.cell(40, 10, 'Hello World')
# PDF को सहेजें:
python pdf.output('hello.pdf', 'F')

Xhtml2pdf

Xhtml2pdf एक CSS/HTML से PDF बनाने के रूपांतरण है जो रिपोर्टलैब के तहत काम करता है। यह HTML टेम्पलेट से PDF बनाने के लिए आदर्श है, इसलिए वेब से PDF रूपांतरण के लिए एक उत्कृष्ट चयन है।

लाभ:

  • HTML और CSS को PDF में रूपांतरित करें
  • जटिल लेआउट और स्टाइलिंग का समर्थन
  • डेज़ंगो जैसे वेब फ्रेमवर्क के साथ अच्छा समावेश

कमियां:

  • HTML और CSS के ज्ञान की आवश्यकता
  • सरल, वेब आधारित रिपोर्ट के लिए उपयुक्त नहीं हो सकता

Xhtml2pdf का उपयोग करना

इस्तामल: Xhtml2pdf को पाइप के उपयोग से इस्तामल करें:

pip install xhtml2pdf

HTML से PDF बनाना: python

from xhtml2pdf import pisa
html = "<h1>Hello World</h1>"
with open('hello.pdf', 'wb') as output_file:
  pisa_status = pisa.CreatePDF(html, dest=output_file)

WeasyPrint

WeasyPrint एक विविध पायथन पुस्तकालय है जो विकासकर्ताओं को HTML और CSS को PDF दस्तावेजों में उच्च गुणवत्ता रेंडरिंग के साथ बदलने की अनुमति देता है। यह रिपोर्ट, फैक्टर या कोई भी अन्य दस्तावेज जो ठीक से साजिश की आवश्यकता होती है, बनाने के लिए विशेष रूप से उपयोगी है। नीचे कुछ उदाहरण दिए गए हैं जो विभिन्न परिस्थितियों में WeasyPrint के उपयोग के बारे में दिखाते हैं।

विशेषताएं

  • HTML और CSS को PDF दस्तावेजों में बदलें।
  • जिन्जा2 जैसे टेम्पलेटिंग इंजन के सहायता से गतिशील डेटा रेंडरिंग का समर्थन करें।

इस्तामल:

pip install weasyprint

यहां एक HTML स्ट्रिंग से PDF बनाने का एक सरल उदाहरण है:

from weasyprint import HTML

html_string = """
<html>
<head><title>सैंपल PDF</title></head>
<body>
<h1>हैलो, WeasyPrint!</h1>
<p>WeasyPrint के उपयोग से बनाया गया एक सैंपल PDF।</p>
</body>
</html>
"""

HTML(string=html_string).write_pdf("सैंपल.pdf")

इस उदाहरण में, WeasyPrint के HTML कक्ष का उपयोग एक HTML स्ट्रिंग को “सैंपल.pdf” नामक एक PDF फ़ाइल में बदलने के लिए किया गया है।

HTML फ़ाइल से लोड करना

आप HTML सामग्री को तुरंत फ़ाइलों से भी लोड कर सकते हैं:

from weasyprint import HTML

# एक फ़ाइल से HTML लोड करें
HTML('सैंपल.html').write_pdf('आउटपुट.pdf')

यह विधि तब उपयोगी होती है जब आपके पास बाहरी फ़ाइल में HTML सामग्री संग्रहित होती है। CSS स्टाइलशीट का उपयोग करना

WeasyPrint के उपयोग के लिए CSS स्टाइलशीट का समर्थन है ताकि आप अपने PDF दस्तावेजों को स्टाइल कर सकें। यहां एक CSS फ़ाइल लागू करने के तरीका है:

from weasyprint import HTML

# एक फ़ाइल से HTML और CSS लोड करें
HTML('सैंपल.html').write_pdf('आउटपुट.pdf', stylesheets=['सैंपल.css'])

यह अधिक जटिल स्टाइलिंग के लिए संभव बनाता है, जिससे आप आकर्षक दिखने वाले PDF बनाने में सक्षम होते हैं ।

जिन्जा2

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

जिन्जा2 की मुख्य विशेषताएं

  • वीज़ा प्रिंट या रिपोर्टलैब के साथ उपयोग के लिए एक टेम्पलेटिंग इंजन।
  • पूर्वनिर्धारित टेम्पलेट में डेटा एम्बेड करने के लिए आदर्श।
  • इस्तामल:
pip install jinja2

अधिक उदाहरण आधिकारिक जिन्जा2 दस्तावेज पृष्ठ पर देखें: https://jinja.palletsprojects.com/en/3.0.x/

पीडीएफकिट

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

मुख्य विशेषताएं

  • wkhtmltopdf के लिए एक पायथन विकासकर्ता, जो HTML को PDF में बदलता है।
  • पूरे प्रणाली में wkhtmltopdf की इस्तामल की आवश्यकता है। https://wkhtmltopdf.org/downloads.html

इस्तामल:

# और wkhtmltopdf की इस्तामल सुनिश्चित करें।

आधारीय उपयोग - HTML स्ट्रिंग को PDF में बदलना

आप पीडीएफकिट. from_string() के उपयोग से एक सरल HTML स्ट्रिंग को PDF फ़ाइल में बदल सकते हैं:

import pdfkit

html_सैंपल = """
<html>
<head><title>सैंपल PDF</title></head>
<body>
<h1>यह एक शीर्षक है</h1>
<p>पहला पंक्ति।</p>
<p>दूसरा पंक्ति।</p>
<p>तीसरा पंक्ति।</p>
<p>चौथा पंक्ति।</p>
</body>
</html>
"""

pdfkit.from_string(html_सैंपल, 'आउटपुट.pdf')

यह वर्तमान निर्देशिका में नामक एक PDF फ़ाइल बनाएगा output.pdf।

स्थानीय HTML फ़ाइल को PDF में बदलना

यदि आपके पास एक स्थानीय HTML फ़ाइल है, तो pdfkit.from_file() के उपयोग से इस्तामल करें:

import pdfkit

pdfkit.from_file('स्थानीय.html', 'सैंपल.pdf')

PDF रिपोर्ट पुस्तकालय (pdf-रिपोर्ट्स)

पायथन में pdf-रिपोर्ट्स पुस्तकालय के उपयोग से PDF रिपोर्ट बनाना एक शक्तिशाली तरीका है जिससे आप HTML या Pug टेम्पलेट से व्यावहारिक दस्तावेज बना सकते हैं। यह पुस्तकालय आधिकारिक रूप से पायथन 3.x के साथ लेकिन उचित संस्करण के साथ पायथन 2.x पर भी चल सकता है। यह एक विविध उपकरण है जो डाइनामिक और अच्छी तरह से संरचित दस्तावेज बनाने के लिए कार्यक्रमात्मक रूप से डिज़ाइन किया गया है।

मुख्य विशेषताएं

  • आधुनिक घटक: सेमैंटिक यूआई फ्रेमवर्क के उपयोग से आधुनिक घटकों का उपयोग करता है।
  • घटकों के एम्बेडिंग: तालिकाओं, चार्ट और अन्य घटकों के एम्बेडिंग की अनुमति देता है।
  • टेम्पलेट समर्थन: HTML और Pug टेम्पलेट के लिए अधिक लचीले रिपोर्ट डिज़ाइन के लिए समर्थन।

pdf-रिपो端 के उपयोग के उदाहरण

इस्तामल:

pip install pdf-reports

यहां pdf-रिपोर्ट्स पुस्तकालय के उपयोग के एक बुनियादी उदाहरण है:

from pdf_reports import PDFReport

# अपने टेम्पलेट फ़ाइल (template.pug) को परिभाषित करें
template = """
doctype html
html
  head
    title= title
  body
    h1= title
    p यह एक सैंपल रिपोर्ट है।
"""

# एक PDF रिपोर्ट इंस्टैंस बनाएं
ि= PDFReport(टपलट)

# टेम्पलेट के लिए संदर्भ सेट करें
दर= {
    'title': 'सैंपल रिपोर्ट'
}

# PDF बनाएं
pdf =ि.जनरट(सदरभ, output='सैंपल_रिपोर्ट.pdf')

PDF उत्पादन में पायथन के उपयोग के बारे में एक अनुसरण

पायथन में PDF रिपोर्ट बनाने के लिए एक श्रेणी शक्तिशाली पुस्तकालय है। क्या आप फैक्टर, व्यवसाय रिपोर्ट या डेटा सारांश बना रहे हैं, ये उपकरण आपको प्रक्रिया को स्वचालित करने, अपने दस्तावेजों को अनुकूलित करने और ब्रैंडिंग संगतता सुनिश्चित करने की अनुमति देते हैं। अपनी आवश्यकताओं के अनुसार उपयुक्त पुस्तकालय का चयन करें और आज ही व्यावहारिक PDF बनाना शुरू करें!

उपयोगी लिंक