Über WordPad drucken

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.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Sonntag 30. November 2008, 19:27

Hallo

Ich möchte gerne RTF ausdrucken. Ich denke das einfachste wird sein das über WordPad zu machen, oder noch besser mit den Standart Programm für ".rtf".

Da mein Programm (Pyedit) eh für Windows gedacht ist müsste das ja kein Problem sein.

Das es geht weis ich nur wie...

Gruß
Andyh
Zuletzt geändert von Andyh am Montag 1. Dezember 2008, 16:47, insgesamt 1-mal geändert.
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Sonntag 30. November 2008, 19:44

Ich verstehe jetzt überhaupt nicht, was Du machen willst und wo Dein Problem liegt!

Versuche das doch mal anders zu beschreiben.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Sonntag 30. November 2008, 19:49

Hallo

Wenn ich in Explorer eine ".rtf" rechts anklicke kommt ja des Kontextmenü.
im Kontextmenü selber gibt es den Punkt "Drucken" und wenn ich da drauf klicke wird das Dokument ausgedruckt.

Genau das möchte ich auch machen, nur aus einer Python Programm heraus.

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Birne94
User
Beiträge: 90
Registriert: Freitag 28. November 2008, 15:18
Kontaktdaten:

Sonntag 30. November 2008, 20:28

abgdf hat geschrieben:Vielleicht mit win32com. Oder

http://timgolden.me.uk/python/win32_how_do_i/print.html

Viele Grüße
Andyh hat geschrieben:Da mein Programm (Pyedit) eh nich für Windows gedacht ist müsste das ja kein Problem sein.
wiederspricht sich imo^^
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 30. November 2008, 20:43

WordPad und "nicht für Windows" auch, von dem her...
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Sonntag 30. November 2008, 20:44

Andyh hat geschrieben:Genau das möchte ich auch machen, nur aus einer Python Programm heraus.
Falls es auch hierbei um deinen Tkinter-Editor geht: Mit dem Drucken sieht es da nicht besonders gut aus.

Du kannst es so machen wie in IDLE - sieh dir dazu mal den IDLE Quelltext an - aber das ist nicht besonders komfortabel.

Oder du schreibst deinen Text in ein Tkinter-Canvas und machst ein Postscript-Dokument daraus ... :D

Oder du verwendest das reportlab-Modul und machst ein PDF-Dokument daraus.

Oder du wandelst den Editorinhalt - mit dem ganzen Highlighting - ins RTF-Format um und speicherst es als rtf-Datei. Dann kannst du darauf ja mit Rechtsklick ... du weißt schon :D
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Sonntag 30. November 2008, 20:52

Vielleicht solltest du etwas genauer sagen wo du was vorhast.
Da mir Pyedit absolut nix sagt, habe ich mal google bemüht:
http://www.google.de/search?q=pyedit&ie ... =firefox-a
Hm, ein Symbian-Programm? Was willst du da mit WordPad? Drucken? ...
Irgendwie verwirrend. ;)

Versuche doch rauszubekommen ob das von dir verwendete GUI-Toolkit (TKinter, wxPython, ...) standardisierte Druckdialoge zur Verfügung stellt. Und wenn nicht suchst du dir ein passendes Modul/Paket.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Sonntag 30. November 2008, 21:35

DeJe hat geschrieben:Vielleicht solltest du etwas genauer sagen wo du was vorhast.
Da mir Pyedit absolut nix sagt, habe ich mal google bemüht:
Pyedit dürfte der von Andyh für seine Eigenentwicklung gewählte Name sein ... :wink:

Dann dürfte es die Tkinter-Anwendung sein, zu der er im Forum schon andere Fragen gestellt hat. Und dann sieht es mit dem Drucken eben nicht so gut aus ...
DeJe
User
Beiträge: 39
Registriert: Sonntag 23. November 2008, 19:38

Sonntag 30. November 2008, 21:45

numerix hat geschrieben:
DeJe hat geschrieben:Vielleicht solltest du etwas genauer sagen wo du was vorhast.
Da mir Pyedit absolut nix sagt, habe ich mal google bemüht:
Pyedit dürfte der von Andyh für seine Eigenentwicklung gewählte Name sein ... :wink:
Ja, ich dachte mir schon das es sich *nicht* um diesen Sybian-Editor handelt. ;)
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Montag 1. Dezember 2008, 16:50

Hallo

@Alle:
Tschuldigung in meiner ersten nachricht ich ein "nich" reichgerutscht.

Es ist natürlich für Windows.

Mit win32api geht es so wich ich das sehe nicht
Mit win32print auch nicht

win32com muss ich mal anschauhen.

Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Montag 1. Dezember 2008, 17:23

Hallo

####Problem gelöst####
Ich habe das Tsndart Programm für -rtf auf Word gestetz und dann wieder auf WordPad jetzt gehts.

@abgdf
Danke für den Link

so müsste es gehen:

Code: Alles auswählen

import tempfile
import win32api

filename = tempfile.mktemp (".rtf")
#filename = "F:\\Andy\\Eigener Grust\\meine sachen\\Dokument.rtf"
open (filename, "w")

win32api.ShellExecute (
    0,
    "print",
    filename,
    None,
    ".",
    0
)
#filename.close()

Das so wies jetzt aussieht geht es, wenn ich in den temp_Datei noch was reinschreibe kommt es aber nicht als .rtf aus den drucken:

{\rtf1\ansi\ansicpg1252\deff0\deflang1031{\fonttbl{\f0\fswiss\fcharset0 Arial;}}
{\colortbl ;\red255\green0\blue0;}
{\*\generator Msftedit 5.41.15.1507;}\viewkind4\uc1\pard\cf1\f0\fs32 Hallo\cf0\fs20\par
}

Das gibt Rotes "Hallo", wird aber so gedruckt, obwohl WordPad es ausdruckt. Ich denke das Problem liegt an der temp-datei.

Wenn ich den normalen pfad einblende kommt:

Code: Alles auswählen


Traceback (most recent call last):
  File "C:\Python25\drucken2.py", line 21, in <module>
    0
error: (31, 'ShellExecute', 'Ein an das System angeschlossenes Ger\xe4t funktioniert nicht.')
Was ist an:
filename = "F:\\Andy\\Eigener Grust\\meine sachen\\Dokument.rtf"

anderst als an:
filename = tempfile.mktemp (".rtf")

der pfad sieht anders aus, müsste aber trozdem bei beiden gehen?
c:\dokume~1\andy\lokale~1\temp\tmpphfvwp.rtf
F:\Andy\Eigener Grust\meine sachen\Dokument.rtf

gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Montag 1. Dezember 2008, 19:34

Andyh hat geschrieben: ####Problem gelöst####
Ich habe das Tsndart Programm für -rtf auf Word gestetz und dann wieder auf WordPad jetzt gehts.
:?: :?: :?:
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Dienstag 2. Dezember 2008, 13:24

Probier doch mal

Code: Alles auswählen

ret = subprocess.Call(['wordpad.exe', '/p', 'DeinText.rtf'])
MfG
HWK
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Dienstag 2. Dezember 2008, 14:11

HWK hat geschrieben:

Code: Alles auswählen

ret = subprocess.Call(['wordpad.exe', '/p', 'DeinText.rtf'])
Hallo!
Bei mir, unter WindowsXP, müsste der Aufruf so lauten:

Code: Alles auswählen

ret = subprocess.call(['write.exe', '/p', r'J:\Dokumente und Einstellungen\Gerold\Desktop\Beispiel.rtf'])
mfg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten