Einzelnen Beitrag anzeigen

Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#2

Re: Drucken ohne Seitenvorschub (TPrinter-Objekt)

  Alt 5. Mär 2004, 22:27
Hallo suaithai!

Da wird wohl TPrinter der falsche Ansatz sein.
Mit TPrinter benutzt Du ja einen Windows-Drucker. Da kümmert sich das OS um die Ausgabe - also auch darum, daß die Schrift richtig in Pixel umgesetzt wird. Zum Schluß wird dann das Bild aus dem Speicher ausgegeben.

Vorteil: Da die Ausgabe grafisch erfolgt, sieht das im Wesentlichen auf allen Druckern gleich aus.
Nachteil: Die grafische Ausgabe belastet den Speicher des Rechners und erfordert mehr Datenübertragung zum Drucker. Außerdem geht die Druckausgabe nur seitenweise.

Die Lösung Deines Problems kann nur die Textausgabe sein. Dabei werden die Buchstaben direkt zum Drucker gesendet.
Nachteil: Du mußt die Druckersteuerzeichen selber korrekt erzeugen (Schriftart, Fett, Kursiv, Schriftgröße) und bist an die Hardware-Zeichensätze gebunden.

Realisierung: entweder die Daten direkt auf dem Druckerport ausgeben (geht nur unter DOS, also Win9x oder ME; unter NT/XP nur mit einer Treiber-DLL - wurde hier oft genug durchgekaut) - oder versuchen, eine Textdatei mit Namen "LPT1" zu öffnen, mit Writeln eine Zeile zu schreiben und sicherheitshalber mit Flush den Puffer ausgeben.

Diese Lösungen erfordern natürlich einen Drucker! Die heute üblichen Matrix-Plotter (geben Zeichnungen punktweise aus), die in den mit "Drucker" beschrifteten Kartons stecken, sind ungeeignet. Bei Nadeldruckern hast Du in der Regel wirklich einen Drucker.

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat