Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Druckserver programmieren (https://www.delphipraxis.net/85219-druckserver-programmieren.html)

waldforest 27. Jan 2007 14:22


Druckserver programmieren
 
Hallo,
ich suche einen Ansatz, einen Druckserver zu programmieren.

Die Herausforderung:
Die Anzahl der Drucker, die DOS verstehen wird immer kleiner. Ich habe eine alte DOS Anwendung, die per Steuercodes den Drucker anspricht. Da GDI-Drucker dies nicht verstehen suche ich eine Möglichkeit, den erstellten Druckfile in eine GDI-druckfähige Datei zu konvertieren und somit einen Druck auch unter WINDOWS zu realisieren.

Ganz ehrlich: im Moment fehlt mir noch jeglicher Ansatz, wie ich so etwas realisieren kann. Hat jemand eine Idee, Lösungsansatz ??

Union 27. Jan 2007 14:38

Re: Druckserver programmieren
 
Was Du brauchst ist ein Parser. Die Steuerzeichen werden ja immer von Escape-Sequenzen eingeleitet. Diese musst Du dann in die entsprechenden GDI-Befehle umsetzen. Den normalen Text zwischen den Steuersequenzen mußt Du noch nach ANSI konvertieren. Das sollte alles nicht so schwierig sein, wenn Du nur einen Satz Steuerzeichen verwendestm also z.B. nur ESC-P oder Epson oder was auch immer.

Andere Alternative: Das DOS Programm neu erstellen mit Delphi ;)

Reinhard Kern 27. Jan 2007 14:58

Re: Druckserver programmieren
 
Zitat:

Zitat von waldforest
Hallo,
ich suche einen Ansatz, einen Druckserver zu programmieren.

Die Herausforderung:
Die Anzahl der Drucker, die DOS verstehen wird immer kleiner. Ich habe eine alte DOS Anwendung, die per Steuercodes den Drucker anspricht. Da GDI-Drucker dies nicht verstehen suche ich eine Möglichkeit, den erstellten Druckfile in eine GDI-druckfähige Datei zu konvertieren und somit einen Druck auch unter WINDOWS zu realisieren.

Ganz ehrlich: im Moment fehlt mir noch jeglicher Ansatz, wie ich so etwas realisieren kann. Hat jemand eine Idee, Lösungsansatz ??

Hallo, ich habe sowas mal für den Betrieb von Laserdruckern als Ersatz für einen NEC P6 aus DOS heraus geschrieben.

Man nehme:

1. ein DOS-TSR-Programm, das die Druckerausgabe der DOS-Software abfängt und in eine Datei in einem wählbaren Verzeichnis schreibt. Bei 2 Druckern in 2 verschiedene Verzeichnisse.

2. Ein Windows-Programm, das dieses Verzeichnis abfragt und eine vorhandene Datei (NEC P6, das ist wie Epson ESC-P) einliest und uminterpretiert: Schrift z.B. umsetzen in eine passende (nichtproportionale) Windows-Schrift mit Skalierung auf doppelte Höhe/Breite, Fett Kursiv usw. möglichst über Parameter steuerbar. Man muss nur das aus ESC-P realisieren, was im Ausdruck vorkommt. Am besten macht man die Kopien einstellbar, dann kann man gleich statt Durchschläge mehrere Kopien machen. Oder/und man mischt eine Grafik-Datei ein statt Briefpapier zu verwenden.

Hat jahrelang zuverlässig funktioniert, bis die DOS-Software ganz ersetzt wurde. Statt Kreisch-Kreisch aus dem Nadeldrucker kommen plötzlich die Ausdrucke Raschel-Raschel aus dem Laserdrucker, und die horrenden Kosten für Vordrucke mit Durchschlägen werden auch eingespart.

Gruss Reinhard

waldforest 27. Jan 2007 15:29

Re: Druckserver programmieren
 
Hallo,
erst mal vielen Dank.

Da ich die DOS Anwendung noch selber anpassen kann, werde ich wohl einen Ausdruck in eine Datei selber anstoßen können. Damit wäre eine ASC-Datei mit Steuercodes schon einmal da.
Wie ihr beschreibt ist das anschließende Auslesen und Umwandeln keine große Herausforderung.
Beim Auslesen stimme ich euch zu, bei der GDI-Umwandlung bin ich noch etwas unsicher.

Ich habe gerade einmal etwas gegoogled um nähere Infos zur GDI zu finden, aber das Richtige noch nicht aufgetan.


P.S.
Da ich aus der alten DOS Welt komme und mich erst seit einem Jahr mit "WINDOWS-Programmierung" über Delphi auseinander setzte werde ich wohl noch einiges lernen müssen. Aber ich gebe nicht auf


mfg
waldforest


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 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