SimpleWinPrint.py und Win32Print

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

SimpleWinPrint.py und Win32Print

Beitragvon Sr4l » Montag 12. März 2007, 21:57

SimpleWinPrint.py (von Gerold)
Win32Print (aus Standard Biliothek)

- Hallo ich kann mit win32print schon gut drucken alles kein Problem (Habe mir auch SimpleWinPrint.py angeschaut). Ich komme jedoch nicht weiter beim ändern der Einstellungen wie Hochkant und Quer sowie die Größe: A4, A3, A2, A1 oder A0.
- Dank PIL kann ich die Größe meiner TIF Datein heraus finden und auch von A3 auf A4 konvertieren o.ä. falls nötig.

Nur ich komme nicht über A4 Hochkant hinweg.
Kann ich das mit win32print lösen? A3, Quer z.B

Kann ich die PIL zum drucken von Bildern verwenden?
Oder andere Module?

Bitte Hinweise, Ideen, weiter führende Links. Danke


PS.: Beim Drucken geht es nur um Bilddateien (erstmal zumindestens)
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Montag 12. März 2007, 22:08

win32print ist übrigens nicht in der stdlib, das gehört nämlich zu pywin32. Zum angenehmen Drucken solltest du dir die Druckfunktionen von wxPython ansehen, da ist vermutlich eher was interessantes für dich dabei als in pywin32 - so wie ich die WinAPI kenne.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Beitragvon Sr4l » Donnerstag 15. März 2007, 18:07

Mit wxPython kann ichs drucken, habe nur ein Problem das ich nicht die Eigenschaften voreinstellen kann.
Ich möchte aber unbedingt alles voreinstellen damit der user sich die zeit spart. Die Daten habe ich schon vorliegen.

Gibts dazu Ideen?


wxPython Drucken aus dem Wiki:
http://wiki.wxpython.org/index.cgi/Prin ... rinting%29
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Beitragvon Sr4l » Donnerstag 29. März 2007, 08:33

Ich habe gearde etwas gefunden um unter Windows (scheinbar) perfekt drucken zu können folgende Seite beschäftigt sich mit der WinAPI.

http://tgolden.sc.sabren.com/python/win ... print.html

Ich poste das falls jemand einmal die Forum suche benutzt und damit ich wenn ich nachhause komme selber den Link noch finde ;-)

Viele Grüße von der Arbeit aus :-)
pyStyler
User
Beiträge: 311
Registriert: Montag 12. Juni 2006, 14:24

Beitragvon pyStyler » Donnerstag 29. März 2007, 12:01

dann mal gleich ein Primitives beispiel mit Tkinter

Code: Alles auswählen

import tempfile
import win32api
import Tkinter as tk
import time
import sys

NAME = 'Mustermann'
VORNAME = 'Max'
STRASSE = 'Muster-Str. 23/5'
PLZ = '101010'
ORT = 'Musterort'

OBEN = '='*30
UNTEN = '='*30
text='''
%s
=   Meine Adresse:\n=
=   %s %s           
=   %s               
=   %s             
=   %s               
%s\n\n\n\n\n
%s
''' % ( OBEN, NAME, VORNAME, STRASSE, PLZ, ORT, UNTEN ,time.ctime())

mfont= ('arial',25, 'bold')

class PrintFile:
   def onPrintFile(self):
      filename = tempfile.mktemp('tkp.txt')
      open(filename, 'w').write(text)
      win32api.ShellExecute(0, "print", filename, None, ".", 0)
         
class tkApp:
   def __init__(self, master):
      self.master=master
      self.printer = PrintFile()

      tk.Button(self.master,
               text='OnPrint',
               font=mfont,
               command=self.OnPrint).pack(side=tk.LEFT,
               expand=tk.YES,
               fill=tk.BOTH, padx=20, pady=20)
               
      tk.Button(self.master, text='OnClose', font=mfont,
               command=self.OnClose).pack(side=tk.LEFT,
               fill=tk.BOTH, expand=tk.YES, padx=20, pady=20)
               
   def OnPrint(self):
      self.printer.onPrintFile()
   def OnClose(self):
      sys.exit()
      
def _main():
   root = tk.Tk()
   root.geometry('550x200')
   app = tkApp(root)
   root.mainloop()
   
if __name__=='__main__':
   _main()
Benutzeravatar
Sr4l
User
Beiträge: 1091
Registriert: Donnerstag 28. Dezember 2006, 20:02
Wohnort: Kassel
Kontaktdaten:

Beitragvon Sr4l » Donnerstag 29. März 2007, 15:35

Wie ich eingangs geschreiben habe geht es mir hauptsächlich um die einstellung von Hoch und Quer sowie die Papier größe A3 und größer.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder