Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Viele PDF als einen Job drucken - PCL Steuerzeichen einbauen (https://www.delphipraxis.net/72167-viele-pdf-als-einen-job-drucken-pcl-steuerzeichen-einbauen.html)

McLane 26. Jun 2006 15:45


Viele PDF als einen Job drucken - PCL Steuerzeichen einbauen
 
Hallo zusammen,

ich suche schon den ganzen Tag nach einer Lösung für folgendes Problem:

Mehrere pdf Dateien müssen als ein Druckjob an einen Netzwerkdrucker gegeben werden. Nun muss aber zwischen einigen Dokumenten ein PCL Steuerzeichen
Delphi-Quellcode:
#27+'l1T'
abgesendet werden um die Druckausgaben in Stapeln aufzuteilen. Da ich mich mit der Ansteuerung von Druckern quasi gar nicht auskenne war ich zuerst ziemlich aufgeschmissen. Es folgen meine bisherigen Lösungsansätze:
  • Ich habe bei der Erstellung der PDF Dateien diese in der PostScript Version ausgeben lassen statt als PDF, diese Dateien zu einem Stream zusammengezogen (dabei das EOF brav entfernt) und an entsprechenden Stellen mein PCL Steuerzeichen untergebracht. Der Drucker (HP Laserjet S5i) weigert sich aber, dass so zu drucken (Windows sagt nur, es kann nicht gedruckt werden)
  • Ich habe noch einer Möglichkeit gegoogelt und in diversen Foren gesucht (auch hier) die PDF Dateien in eine PDF Datei zusammenzuführen (das ist einfach Machbar) und in die PDF Datei irgendwie eine Steuersequenz unterzubringen (hier scheiterte es)
  • Ich habe nach einer Möglichkeit gesucht den Spooler so anzusteuern, dass ich die Dateien einzeln Drucke, zwischendrin ggf. meine Steuersequenz unterjubel und im Abschluss den gesamten Druck als einen Job auf den Drucker loszulassen. Geht nicht / weiß keiner / kennt keiner.
Leider müssen die Vorgaben
  • Alles in einen Job
  • Steuerzeichen zwischen einigen Dokumenten zur Trennung der Ausgaben
unbedingt eingehalten werden.

Hat jmd. eine Idee bzw. kann mich in die Richtige Richtung stubsen, selber weiter zu kommen?

Union 26. Jun 2006 16:15

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Hallo,

Du solltest dafür keine Escape-Sequenzen einbetten, sondern PJL verwenden. Dazu schau am besten ins PCL/PJL-Handbuch. Als Beispiel solltest Du Dir eine Postscriptdatei mit 2 oder 3 Seiten manuell erstellen und dann mit den Befehlen experimentieren.

merlin17 26. Jun 2006 16:44

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
mit dem pdftoolkit für Delphi von gnostice.com kannst du relativ einfach pdf concaten;
und dieses ausdrucken als ein file und dann ggf. löschen;

nur was genau soll das PCL-Steuerzeichen machen ??


:-) thomas

Union 26. Jun 2006 16:48

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Die von ihm angegebene Sequenz schaltet den Papierausgabeschacht um jeweils einen Zentimeter nach links oder rechts. Dadurch kannst Du dann die Stapel einfach beim Rausnehmen trennen.

McLane 26. Jun 2006 17:42

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Zitat:

Zitat von Union
Hallo,

Du solltest dafür keine Escape-Sequenzen einbetten, sondern PJL verwenden. Dazu schau am besten ins PCL/PJL-Handbuch. Als Beispiel solltest Du Dir eine Postscriptdatei mit 2 oder 3 Seiten manuell erstellen und dann mit den Befehlen experimentieren.

Danke für den Link... Das mit den Postscriptdateien ist ja nicht das Problem, nur leider kann ich da mein PCL Steuerzeichen nicht einbetten. Und die brauche ich um wie Union schon bemerkt hat den Versatz im Ausgabeschacht zu erzeugen. Das pdftoolkit kommt aus kostengründen nicht in Frage, das zusammenmergen der PDF Dateien wäre auch nicht das Problem, sondern auch hier das einbetten des Steuerzeichens. Und wenn ich das richtig feststelle kann das pdftoolkit das nicht... :(

omata 26. Jun 2006 17:43

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Wegen Nichtbeachtung gelöscht.

Union 26. Jun 2006 18:00

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Hallo,

um Die Sprachen zu wechseln musst Du UEL verwenden (Universal Exit Language). Du kannst dann so was schreiben:
Code:
<esc>%-12345X@PJL ENTER LANGUAGE = PCL [<CR>]<LF>
<esc>l1T
<esc>%-12345X@PJL ENTER LANGUAGE = POSTSCRIPT [<CR>]<LF>
Damit schaltest Du zuerst auf PCL, sendest Dein Steuerzeichen und dann wieder zurück auf Postscript.
Oder Du suchst im Handbuch (oder woanders) wie Du die Jobtrennung direkt über PJL hinkriegst.

[edit]
Hier gibt es sogar ein Programmierbeispiel dafür (Seite 296, "Example: Switching Printer Languages")
[/edit]

McLane 26. Jun 2006 18:06

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Zitat:

Zitat von Union
Hallo,

um Die Sprachen zu wechseln musst Du UEL verwenden (Universal Exit Language). Du kannst dann so was schreiben:
Code:
<esc>%-12345X@PJL ENTER LANGUAGE = PCL [<CR>]<LF>
<esc>l1T
<esc>%-12345X@PJL ENTER LANGUAGE = POSTSCRIPT [<CR>]<LF>
Damit schaltest Du zuerst auf PCL, sendest Dein Steuerzeichen und dann wieder zurück auf Postscript.
Oder Du suchst im Handbuch (oder woanders) wie Du die Jobtrennung direkt über PJL hinkriegst.

[edit]
Hier gibt es sogar ein Programmierbeispiel dafür (Seite 296, "Example: Switching Printer Languages")
[/edit]

Supi, sowas hab ich gesucht... probier ich gleich morgen früh aus und berichte euch.... Tausend Dank für den Tip...

McLane 28. Jun 2006 07:13

Re: Viele PDF als einen Job drucken - PCL Steuerzeichen einb
 
Funktioniert wunderbar... Dank euch vielmals....


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz