2012-02-01 16 views
5

के साथ एक्सेल शीट प्रिंटिंग मैंने प्रोग्रामिक रूप से अजगर में xlwt के साथ एक्सेल शीट का एक गुच्छा बनाया है। यह सब ठीक हो गया है, लेकिन अब मुझे उन्हें सभी को पीडीएफ में बदलने की जरूरत है। मैं इसे pywin32 और कॉम इंटरफेस के साथ करने की कोशिश कर रहा हूं। मैं इस तरह के लिए जा रहा द्वारा कुछ हद तक करीब प्राप्त कर सकते हैं:COM इंटरफ़ेस

import win32com.client 
o = win32com.client.Dispatch("Excel.Application") 
o.Visible = 1 
wb = o.Workbooks.Open('foo.xls') 
ws = wb.Worksheets[1] 
ws.printout() 

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

+1

दुर्भाग्यवश यह Adobe PDF प्रिंटर ड्राइवर का डिफ़ॉल्ट व्यवहार है। –

+0

मैंने पाया कि PrintOut() केस संवेदनशील है। – Norfeldt

उत्तर

5

PrintOut विधि का उपयोग करने के बजाय, ExportAsFixedFormat का उपयोग करें। आप पीडीएफ प्रारूप निर्दिष्ट कर सकते हैं और फ़ाइल नाम की आपूर्ति कर सकते हैं। इसे आज़माएं:

ws.ExportAsFixedFormat(0, 'c:\users\alex\foo.pdf') 
+0

उसने ऐसा किया! बहुत बहुत धन्यवाद। –

0

आप पीडीएफ के रूप में सहेज सकते हैं या पीडीएफ पर प्रिंट कर सकते हैं। यह आपके प्रिंट ड्राइवर मुद्दों को बाईपास करना चाहिए।

+0

हम्म ठीक है, क्षमा करें मैं यह कैसे करूँ? –

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