|
|
#1 |
|
Moderator
|
OA4 drucken von DOS auf GDI-Drucker und/oder in PDF
Hallo liebe Community,
Nachdem ich im Forum immer wieder über Probleme mit dem Drucken aus OA4 gelesen habe, habe ich mir gedacht, ich werde hier mal einen Lösungsansatz bereitstellen. Manche User haben Probleme mit ihren neu erworbenen GDI-Druckern (Meist billige Drucker, die kein PCL können), andere User würden gerne PDF-Dokumente aus den OA-Ausdrucken erstellen. Ich möchte allerdings betonen, dass diese Lösung kein mustergültiger Ersatz für einen echten PCL-Drucker ist, ein PCL-fähiger Drucker ist in jedem Fall vorzuziehen. Beginnen wir vorerst mit der Problemstellung: Bei GDI-Druckern ist der Druckprozessor ganz einfach nicht in der Lage, PCL (o.ä.) Steuersequenzen zu interpretieren, und man muss daher selber die Steuersequenzen zu einem Bild Rastern, und dieses Bild dann dem Windows Druckertreiber zum Ausdruck auf dem Drucker übergeben. Ähnlich verhält es sich auch mit dem PDF-Druck. Hier müssen die Steuersequenzen des Druckers in das Postscript-Format (ebenfalls eine Druckerbeschreibungssprache) gerendert werden, aus dem sich dann ein PDF erstellen lässt. Das Hauptproblem liegt also im Rendering der Steuersequenzen. Die Firma Artifex Software Inc. stellt hierfür eine schöne Lösung bereit: Das GhostPCL Paket, welches eine modifizierte Ghostscript-Version beinhaltet, die PCL-Steuersequenzen verarbeiten und rendern kann. Allerdings wird hier nur der Sourcecode zum Download angeboten, kompilieren muss man es sich selber. Die Standardversion des Makefiles beinhaltet allerdings keine Unterstützung für die Ausgabe der Daten auf einem Windows-Drucker, obwohl Ghostscript das eignetlich kann, also habe ich die Makefiles und auch den Druckertreiber leicht modifiziert, sodass diese Option von Ghostscript unterstützt wird und habe die fertig kompilierte Version in mein Druckpaket inkludiert. GhostPCL ist netterweise auch in der Lage, gleich direkt ohne Umwege PDF-Dateien zu erstellen. Ein PCL-Kompatibler OA-Druckertreiber ist z.B. der HP Laserjet. Wer es etwas simpler haben will, und wem einfache Formatierungen wie Kursiv, Fett, Unterstrichen und Farbig, sowie die Angabe der Schriftgröße reichen, der findet eventuell auch mit den ESC/P Sequenzen des EPSON LQ/SQ Druckers das Auslangen. Diese Lösung ist weniger Umfangreich als GhostPCL, ich habe daher ein kleines Programm geschrieben, welches diese Sequenzen rendern und auf einen Windows-Drucker ausgeben kann. Der Sourcecode ist wie immer inkludiert. Möchte man nur reinen Text ausgeben, sieht der Output hier eventuell sogar besser aus als der von GhostPCL. Im Prinzip arbeitet mein Programm so ähnlich wie das bekannte kostenpflichtige Tool DOSPRN. Je nach Anforderung kann man sich also entscheiden, welche Lösung man nehmen möchte. Die hier angebotene Lösungen funktioniert ansich mit allen DOS-Programmen, sie sind also nicht auf OpenAccess beschränkt. Für die Funktionsweise und Einrichtung des Ganzen ist im doc-Verzeichnis des Pakets eine Readme-Datei inkludiert, in der alles beschrieben steht. Ich habe sie in Englischer Sprache verfasst, damit auch internationale Benutzer diese verwenden können. Sollte jemand Schwierigkeiten mit der Anleitung haben oder der Englischen Sprache nicht mächtig sein, keine Scheue, einfach hier posten, ich werde helfen. Das gilt natürlich auch für sonstige Probleme mit der Einrichtung. Viel Spaß damit, ich hoffe, es kann wer brauchen. Ach ja, und schon etwas verfrüht: Frohes Osterfest!
|
|
|
|
|
|
#2 |
|
Registrierter Benutzer
|
Erstmal Danke für deine Arbeit. Funktioniert perfekt.
Nur habe ich ein Problem. Wenn ich im Querformat drucke, wird die PDF immer im Hochformat erstellt. Gibt es da einen Parameter wo ich das einstellen kann? Darüber hinaus hätte ich noch eine Frage zum Druck aus der Programmierung. Kann ich direkt den Pfad+Dateinamen im Druck mitgeben so das ich das nicht manuell bei jedem Druck eingeben muss? Danke im Voraus für die Hilfe ![]() Gruß |
|
|
|
|
|
#3 | ||
|
Moderator
|
Hallo,
Juhu, danke fürs erste feedback! ![]() Zitat:
Code:
-J"@PJL SET ORIENTATION=PORTRAIT" Zitat:
makepdf.bat Code:
@echo off echo Converting PCL to PDF.... call pclenv.bat pcl6 -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE#pdfwrite %PCLOPTS% -sOutputFile#%2 %1 del %1 Code:
makepdf.bat <PCL file> <PDF file> Alles unklar? ![]() Lg. |
||
|
|
|
|
|
#4 |
|
Registrierter Benutzer
|
So wollt mich nur nochmal kurz melden. Hat soweit alles super geklappt. Danke für deine Hilfe. Läuft perfekt.
|
|
|
|
|
|
#5 |
|
Entwickler
|
Für alle, die so wie ich nun direkt aus dem OA4 den Aufruf für das PDF machen, hier meine Version für Netzwerkbenutzer:
Code:
execute "cmd /C z:\programm\_pcl2pdf.bat c:\oa4\pdf.txt" Code:
@echo off echo Converting PCL to PDF.... call z:\programm\pclenv.bat z:\programm\pcl6 -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE#pdfwrite %PCLOPTS% -sOutputFile#z:\programm\spool.pdf %1 del %1 start z:\programm\spool.pdf |
|
|
|
|
|
#6 |
|
Registrierter Benutzer
|
Vielen Dank für die Möglichkeit PDF aus OA zu erzeugen. Das hat mir echt gefehlt.
Gruß Alfred |
|
|
|
|
|
#7 |
|
Registrierter Benutzer
|
pclenv.bat
Wie muß ich in der Batch pclenv.bat die Zeile
set PCLFONTSOURCE=%CD:\=/%/urwfonts/ so ändern, das auf ein Verzeichnis wie z.B. e:\oa4\pdf\urwfonts verwiesen wird. Danke Alfred |
|
|
|
|
|
#8 |
|
Moderator
|
%CD gibt das aktuelle Arbeitsverzeichnis an.
Wenn Du einen absoluten Pfad setzen willst, setz ihn einfach (und tausche die \ gegen /), also in Deinem Fall: set PCLFONTSOURCE=e:/oa4/pdf/urwfonts/ Lg. |
|
|
|
|
|
#9 |
|
Registrierter Benutzer
|
Veilen Dank, funktioniert einwandfrei!
Alfred |
|
|
|
|
|
#10 |
|
Registrierter Benutzer
|
Ist es möglich über diesen Weg farbige PDF zu erstellen? Also z.B. negative Beträge rot darzustellen?
|
|
|
|
Antwort schreiben... |
| Themen-Optionen | Thema durchsuchen |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Drucken bis zum Absturz oder ins Nirwana | morning | SPI OA4 Open Access II/III/IV (2,3,4) Anwender Forum | 36 | 16.06.2009 14:24 |
| Aus OA4 auf einen Netzwerkdrucker drucken | Shop | SPI OA4 Open Access II/III/IV (2,3,4) Anwender Forum | 0 | 27.11.2002 16:24 |