hi.. ich möchte eine *.doc datei mit python verändern und dann drucken.. ich weiss das man mit wxPython drucken kann, aber ob dann die formatierung auch in ordnung ist fragt sich nur.. hilfe wäre sehr willkommen für andere umsetzungs möglichkeiten.
p.s.: hab kein drucker zum testen =P
Doc drucken
-
- User
- Beiträge: 419
- Registriert: Sonntag 3. September 2006, 15:11
- Wohnort: in den weiten von NRW
- Kontaktdaten:
Hi!
Zum Drucken braucht man kein GUI-Toolkit. Die Suche hift bestimmt.
Außerdem, was willst du denn ändern? Notfalls kannst du die Datei ja editiren, speichern, drucken und evtl. wieder löschen.
Gruß, jj
Zum Drucken braucht man kein GUI-Toolkit. Die Suche hift bestimmt.
Außerdem, was willst du denn ändern? Notfalls kannst du die Datei ja editiren, speichern, drucken und evtl. wieder löschen.
Gruß, jj
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hallo gurke!gurke hat geschrieben:ich möchte eine *.doc datei mit python verändern und dann drucken.
[...]
p.s.: hab kein drucker zum testen =P
Willkommen im Python-Forum!
Öffne die Doc-Datei im Winword, editiere sie damit und drucke sie damit aus. Genau das kannst du mit Hilfe von "pywin32" http://sourceforge.net/project/showfile ... p_id=78018 machen. Du brauchst Winword dafür und du solltest wissen, wie du so etwas mit "Visual Basic for Applications" in Winword schaffst. Wenn du das weißt, dann ist es kein Problem mehr das nach Python umzusetzen. Im Winword hilft dir die Makroaufzeichnung dabei.
Für mehr Hilfe, suche hier im Forum nach "Word.Application".
Der PDFCreator installiert sich als Drucker. Wenn du auf diesen Drucker ausdruckst, dann erzeugst du damit eine PDF-Datei, die du dir dann ansehen kannst. So brauchst du keinen Drucker zum Probieren.
http://de.wikipedia.org/wiki/PDFCreator
mfg
Gerold
Zuletzt geändert von gerold am Donnerstag 10. Mai 2007, 19:37, insgesamt 1-mal geändert.
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Für mehr Hilfe, suche hier im Forum nach "Word.Application".
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
ähm ich hab jetzt alles soweit hinbekommen.. aber irgendwie will der nicht drucken krieg nen traceback und zwar:
folgender code:
die bookmarks werden verändert etc.. aber beim drucken hat er dann irgendwie probleme mit ActiveDocument
danke im vorraus
Code: Alles auswählen
Traceback (most recent call last):
File "C:\Dokumente und Einstellungen\gurky\Desktop\Python Programme\DVAG Customer Service\DVAG Customer Service.py", line 193, in OnPress
doc.ActiveDocument.PrintOut()
File "C:\Python24\Lib\site-packages\win32com\client\dynamic.py", line 496, in __getattr__
raise AttributeError, "%s.%s" % (self._username_, attr)
AttributeError: Open.ActiveDocument
Code: Alles auswählen
x = 1
filename = os.path.abspath('letter.doc')
app = win32com.client.Dispatch('Word.Application')
app.Visible = False
while (x <= int(self.letteredit.GetValue())):
doc = app.Documents.Open(filename)
doc.Bookmarks('name').Range.InsertAfter(self.partner.name)
doc.Bookmarks('street').Range.InsertAfter(self.partner.street)
doc.Bookmarks('housenr').Range.InsertAfter(self.partner.housenr)
doc.Bookmarks('postal').Range.InsertAfter(self.partner.postal)
doc.Bookmarks('city').Range.InsertAfter(self.partner.city)
doc.ActiveDocument.PrintOut()
doc.Close()
del doc
self.partner = Partner()
time.sleep(2)
x += 1
app.Quit()
del app
danke im vorraus