HtmlEasyPrinting: Preview funktioniert, Ausdruck nicht

Plattformunabhängige GUIs mit wxWidgets.
Antworten
kaibrossi
User
Beiträge: 1
Registriert: Dienstag 10. Mai 2011, 21:39

Hallo zusammen

Ich wollte eine Ausgabe über den Drucker machen und wollte dies mit HtmlEasyPrinting bewerkstelligen.
Jedoch gibt mir die gedruckte Ausgabe nicht das selbe wie das "Preview". (Keine Sonderzeichen und falsche Abstände) :(
Komischerweise funktioniert das ganze mit Ubuntu 64bit. Bei meinem Ubuntu 32bit jedoch nicht.

Hier mein Code:

Code: Alles auswählen

# -*- coding: UTF-8 -*-

from wx.html import HtmlEasyPrinting
import wx

wx.SetDefaultPyEncoding("utf-8")

class MyApp(wx.App):
    def OnInit(self):
        
        text = 'Das sind die Zeichen die nicht funktionieren: äüöéè'
        self.PrintText('Title',text)
        
        return True
        
    def PrintText(self, title, text):
        pt = Printer()
        pt.PreviewText(title, text)
    
    
class Printer(HtmlEasyPrinting):
    def __init__(self):
        HtmlEasyPrinting.__init__(self)

    def PreviewText(self, title, text):
        s = self.GetPrintData()
        s.SetPaperId(wx.PAPER_A4)
        s.SetColour(False)
        
        code = '<meta http-equiv="content-type" content="text/html; charset=utf-8">'
        header = 'Di schnällschte Baumer 2011<br>'
        
        self.SetStandardFonts(12,'Times New Roman','Times New Roman')

        self.SetHeader(header)
        self.SetFooter('<CENTER>@PAGENUM@/@PAGESCNT@</CENTER>')
        HtmlEasyPrinting.PreviewText(self, code +'<h1>'+ title +'</h1>' + text)

if __name__ == '__main__':
    app = MyApp()
    app.MainLoop()
Ich habe nun schon versucht die Codierung, Fonts, etc. zu ändern aber nichts funktionierte.
Für Hilfe bin ich sehr dankbar.

Gruss
Kai
Antworten