View Full Version : PDF drucken
Unregistriert
02-12-04, 23:30
bitte das javascript auch einmal zuschicken, wenn es möglich ist.
danke im voraus
thebigsascha@yahoo.de
Hallo KM,
auch ich habe das gleiche Problem.
Ich wäre Dir dankbar, wenn Du mir das JavaSriptFile zuschicken könntest.
Meine EMail-Adresse lautet.
llaeuger@primevision.org
Im voraus besten Dank und eine frohes Weihnachtsfest wünscht Dir
llaeuger
Hallo Rolf,
habe jetzt endlich die Lösung zu meinem Problem gefunden. Das Problem beim Befehl
AcroRd32.exe /p /h "Datei.pdf" (über STRPCCMD)
war, dass zwar die PDF-Datei korrekt gedruckt wurde, jedoch die DOS-Box nicht geschlossen wurde, da der Acrobat-Reader im Hintergrund gestartet wurde, aber nicht mehr beendet wurde. Der DDE-Kanal blieb somit offen. Wenn ich nun per Programm eine weitere PDF drucken wollte, wurde eine weitere DOS-Box geöffnet, usw.. Mein Rechner wäre dann nach kurzer Zeit auf Ressourcen-Probleme gestoßen.
Jetzt habe ich im Internet ein JavaScript-File gefunden, das ich über RUNRMTCMD aufrufen kann. An diese JS-Datei gebe ich den PDF-Dateinamen als Parameter mit und die PDF wird gedruckt und der Acrobat-Reader hinterher wieder beendet. Das ist genau das, was ich wollte. Somit kann ich die PDFs voll automatisiert drucken.
Gruß,
KM
Hallo,
wäre nett, wenn Du das Script hier veröffentlichen könntest. Dann wäre vielen geholfen. Danke!
Viele Grüße
Sven
Hallo Sven,
würde ich gerne, ich bin hier aber nur der Durchlauferhitzer, welcher das von Koni zugestellte Objekt weiterleitet.
Bitte wende Dich doch an Koni. (KM, erster Eintrag Seite 1 zu diesem Thema)
Gruss Marcel
Hallo KM,
es wäre nett, wenn ich das JS auch bekommen könnte.
mr@softm-stuttgart.de
Vielen Dank im Voraus
SMMR
Hallo Rolf,
habe jetzt endlich die Lösung zu meinem Problem gefunden. Das Problem beim Befehl
AcroRd32.exe /p /h "Datei.pdf" (über STRPCCMD)
war, dass zwar die PDF-Datei korrekt gedruckt wurde, jedoch die DOS-Box nicht geschlossen wurde, da der Acrobat-Reader im Hintergrund gestartet wurde, aber nicht mehr beendet wurde. Der DDE-Kanal blieb somit offen. Wenn ich nun per Programm eine weitere PDF drucken wollte, wurde eine weitere DOS-Box geöffnet, usw.. Mein Rechner wäre dann nach kurzer Zeit auf Ressourcen-Probleme gestoßen.
Jetzt habe ich im Internet ein JavaScript-File gefunden, das ich über RUNRMTCMD aufrufen kann. An diese JS-Datei gebe ich den PDF-Dateinamen als Parameter mit und die PDF wird gedruckt und der Acrobat-Reader hinterher wieder beendet. Das ist genau das, was ich wollte. Somit kann ich die PDFs voll automatisiert drucken.
Gruß,
KM
Hallo SMMR,
schau mal weiter unten. In einem anderen Beitrag zu diesem Thema habe ich das Tool mal eingefügt. Du kannst es von dort runterladen.
Gruß,
KM
Hi,
ich hab mir auch das Tool geholt, allerdings bekomm ich immer ein Fehler bei Zeile 42.
meldung:" 'oAcro' ist Null oder kein Objekt'".
Kann mir wer da helfen?
Gruß
Hallo Funmaker,
welche Version des Acrobat Reader hast Du denn ?
Gruß,
KM
Ich beschäftige mich gerade auch mit dem Problem und möchte hier noch kurz meinen (nicht Windows-)Lösungsansatz vorstellen, vielleicht hat ja jemand schon Erfahrung damit.
Voraussetzung dafür, ist ein konfiguriertes CUPS, welches auch einen Filter für PDF installiert hat.
Auf Linux (x86) kann ich so eine PDF Datei ausdrucken:
lp -d printername -h hostname Datei.pdf
Durch den installierten Filter wird das PDF-Dokument umgesetzt und ausgedruckt.
Ich habe mir den lp-Befehl von unserer AIX in die PASE-Umgebung geholt - leider ist das nur der originale lp Befehl und nicht der Cups, welcher bei der CUPS-Installation die originalen Druckbefehle (lp, lpr...) ersetzt.
Hier liegt noch das Fragezeichen - ob der Client (lp) oder der Cups-Server den Filter anwendet.
Um von der AS/400 auszudrucken, muss ich mich noch gedulden - denn die AS/400 (V5R2) kann zwar IPP, für CUPS Bedarf es aber noch eines PTF's....
Dann werde ich das PDF als *USERASCII mit TRANSFORM(*NO) an die Cups-Queue senden und schauen was passiert.
Alternativen:
1. Ich habe versucht Ghostscript für den Befehl "pdf2ps" in der PASE-Umgebung zu portieren. Allerdings fehlen mir dazu libs. Diese kann ich zwar von der AIX kopieren, diese sind aber anscheinend 1:1 nicht für PASE zu gebrauchen..
Zu PASE muss ich noch sagen, dass ich bisher nur kleinere Programme erfolgreich in die PASE-Umgebung portieren konnte.
2. Java ab 1.4
Unterstützt auch IPP und printStreamingFiles, mit welchen man unter Umständen PDF zu PS wandeln könnte bzw. PDF's via IPP an Cups zu bringen.
Ich habe mich damit aber noch nicht beschäftigt, da ich es vorher noch mit dem CUPS-Drucker (PTF) testen will und auch nicht weiß, wie weit dieser Teil auf der AS/400 umgesetzt ist.
3. Achja, auch die AS/400 kann seit V5R2 IPP-Server spielen. Ich habe aber noch nirgends die Möglichkeiten für Filter ala CUPS gesehen.
Fortsetzung folgt...
mfg
Robert P.
Ich wollte noch nachliefern, dass sich nach dem PTF zwar die Cups-Drucker wunderbar ansteuern lassen, aber ein kopiertes (PASE rfile auf QPRINT TRANSFORM(*NO) devtype(*userascii)) PDF-File wird nicht von Cups umgesetzt. Das File wird anscheinend nur 1:1 an den Drucker weitergeleitet - ein Postscriptfile (Level 2) funktioniert zum Beispiel.
In Java 1.4 wird PDF zwar als Dokumententyp (DocFlavor) angeboten, aber das war es auch schon - kein drucken und auch keine Umsetzung (alle Plattformen).
Zum Glück gibt es ja eine große OpenSource-Gemeinde für Java und so konnte ich das Problem relativ rasch "beheben". Mittels OpenSource "jipsi" kann man auch Cups-Drucker als Druckerresourcen in Java ansprechen.
Damit war der Weg frei für ein "pdf2cups" und siehe da: funktioniert wunderbar. Zwecks annehmbarer Performance sollte es aber als Serverjob laufen.
Robert P.
PS. Der Filter von Cups kann für alles Mögliche verwendet werden, z.B. TIF's usw.