2015-02-02 3 views
7

के साथ टैब शीर्षक प्रदान करें यह प्रश्न वास्तव में सरल है, लेकिन मुझे इसके बारे में कोई डेटा नहीं मिल रहा है। जब मैं रिपोर्टब्लैब के साथ पीडीएफ उत्पन्न करता हूं, तो httpresponse को फ़ाइल के रूप में पास करते हुए, फ़ाइलों को दिखाने के लिए कॉन्फ़िगर किए गए ब्राउज़र पीडीएफ को सही तरीके से प्रदर्शित करते हैं। हालांकि, टैब का शीर्षक "(बेनामी) 127.0.0.1/whatnot" रहता है, जो कि उपयोगकर्ता के लिए थोड़ी बदसूरत है।रिपोर्टलाब जेनरेटेड पीडीएफ

चूंकि अधिकांश साइटें किसी भी तरह से एक एप्राइपिएट शीर्षक प्रदर्शित करने में सक्षम हैं, मुझे लगता है कि यह करने योग्य है ... क्या कोई शीर्षक पैरामीटर है जिसे मैं पीडीएफ में पास कर सकता हूं? या प्रतिक्रिया के लिए कुछ हेडर? यह मेरा कोड है:

def render_pdf_report(self, context, file_name): 
    response = HttpResponse(content_type='application/pdf') 
    response['Content-Disposition'] = 'filename="{}"'.format(file_name) 

    document = BaseDocTemplate(response, **self.get_create_document_kwargs()) 
    # pdf generation code 
    document.build(story) 
    return response 
+0

क्या आप उन साइटों के किसी भी उदाहरण प्रदान कर सकते हैं जहां यह काम कर रहा है जैसा आप चाहते हैं? –

+0

उदाहरण: यहां, फ़ाइल नाम शीर्षक http://www.biblioteca.org.ar/libros/211756.pdf में प्रदर्शित होता है। साथ ही, जब weasyprint के साथ उत्पन्न होता है, तो HTML शीर्षक टैग को संबोधित किया जाता है, इसलिए मैं सकारात्मक हूं यह करने योग्य है – Alvaro

उत्तर

7

ऐसा लगता है कि Google क्रोम पीडीएफ खिताब बिल्कुल प्रदर्शित नहीं करता है। मैंने आपकी टिप्पणी में लिंक का परीक्षण किया (biblioteca.org.ar) और यह फ़ायरफ़ॉक्स में "- 211756.pdf" के रूप में प्रदर्शित होता है, ऐसा लगता है कि एक खाली शीर्षक है और फ़ायरफ़ॉक्स फिर पूर्ण यूआरएल पथ के बजाय फ़ाइल नाम प्रदर्शित करता है।

from reportlab.pdfgen import canvas 

c = canvas.Canvas("hello.pdf") 
c.setTitle("hello stackoverflow") 
c.drawString(100, 750, "Welcome to Reportlab!") 
c.save() 

खुलने यह फ़ायरफ़ॉक्स में पैदावार की जरूरत परिणाम:

मैं ReportLab's User Guide में के बारे में setTitle पता चला

मैं एक ही व्यवहार कोड के इस टुकड़े का उपयोग कर reproduced। यह पृष्ठ पर सूचीबद्ध 16. :)

+0

धन्यवाद! ऐसा लगता है कि यह चाल है। अब मुझे इसे कैनवास – Alvaro

+5

का उपयोग करके प्लैटिपस w/o के साथ काम करने के लिए बदलने की कोशिश करनी चाहिए। document.title = 'title' चाल – Alvaro

+1

और दस्तावेज़ों में setTitle के उल्लेख के बारे में है .. यह यह भी समझाता नहीं है कि इसका क्या प्रभाव है और न ही यह मदद करता है जब आप कैनवास – Alvaro

0

आप trml2pdf का उपयोग कर रहे हैं, तो आप, टेम्पलेट टैग में "शीर्षक" विशेषता जोड़ने के लिए अर्थात्।, < टेम्पलेट title = "चालान" ... की आवश्यकता होगी है

संबंधित मुद्दे