Steuerbefehle für Fx-80 kompatible Drucker unter Turbobasic

Bild Alles zum Thema Programmierung
Bild All around programming

Moderatoren: Sven, Sleepy, Wolfgang, cas, des-or-mad

Steuerbefehle für Fx-80 kompatible Drucker unter Turbobasic

Beitragvon Rockford » Do 4. Dez 2008, 22:20

Hi!

Da ich momentan an der Druckerausgabeprogrammierung eines Programms sitze, frage ich mich, wie ich z.B. unterschiedliche Druckerschriftarten usw. unter Turbobasic vorgeben kann. Was ich herausgefunden habe: Zeichen in <invers> werden als kursiv gedruckt.
Gibt es aber z.B. für die Umschaltung der Druckerschriftart z.B. auf nicht proportional eine Möglichkeit unter Turbobasic?

Bin über jeden Tipp dankbar!

Gruss, Holger
Benutzeravatar
Rockford
Super Poster
Super Poster
 
Beiträge: 1368
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Esslingen

Beitragvon des-or-mad » Do 4. Dez 2008, 23:09

Hallo!

Ich kenne mich jetzt zwar nicht mit TurboBasic aus, aber FX-80 kompatible Drucker werden über ESC/P (Epson Standard Code for Printers) angesprochen. Dies sind spezielle Escape-Sequenzen, die an den Drucker gesendet werden.

Ein entsprechende Doku findest Du unter: http://www.epson.co.uk/support/manuals/ ... Part_1.pdf

Früher enthielten die Druckerhandbücher immer einen ganz netten Anhang, in dem alle unterstützen ESC Sequenzen aufgeführt wurden. Das Handbuch für die FX Serie gibt's bei Epson ebenfalls als PDF Download

Oliver
des-or-mad
Multi Poster
Multi Poster
 
Beiträge: 209
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Gelsenkirchen/ NRW

Beitragvon HiassofT » Do 4. Dez 2008, 23:23

Ja, gibt es :-)

Die Epson (-kompatiblen) Drucker kennen dafür die sogenannten ESC/P Codes. Je nach Drucker (zB 9-Nadel oder 24 Nadel) werden allerdings unterschiedliche Sachen unterstützt. Grob gesagt verstehen die neueren Drucker auch die älteren Kommandos, im Zweifelsfall ist aber ein Blick ins Handbuch des Druckers nötig.

Die meisten der Codes beginnen mit einem "Escape" Zeichen (also CHR$(27), oder einfach in einem String 2x die ESC Taste drücken). Danach kommen ein oder auch mehrere weitere Zeichen, je nach Kommando.

Mal ein kleines Beispiel (ungetestet, sollte aber klappen):
Code: Alles auswählen
10 OPEN #1,8,0,"P:"
20 ? #1;CHR$(27);"p";CHR$(1);"Proportional ein";CHR$(27);"p";CHR$(0)" und wieder aus"
30 CLOSE #1


Das wichtigste ist nun zu den Codes (zB für Breitschrift, fett etc.) zu kommen. Die sind netterweise alle dokumentiert und bei Epson gibt's dazu das "ESC/P Reference Manual" zum Download:

ftp://download.epson-europe.com/pub/download/182/epson18162eu.zip

In diesem Manual sind alle ESC/P Codes beschrieben, in Teil 3 gibt's eine Liste welcher Drucker welche Codes unterstützt (zurückreichend bis zum MX-80 aus dem Jahr 1980).

so long,

Hias
HiassofT
Night&Day Poster
Night&Day Poster
 
Beiträge: 1836
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Salzburg

Beitragvon Rockford » Fr 5. Dez 2008, 20:44

Danke für die schnelle Info! Werde ich am Wochenende gleich mal ausprobieren.

Gruss, Holger
Benutzeravatar
Rockford
Super Poster
Super Poster
 
Beiträge: 1368
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Esslingen

Beitragvon pps » Sa 6. Dez 2008, 09:28

Ich habe jetzt nicht in die Codes reingeschaut, aber es gab/gibt auch Farbnadeldrucker, die mittels entsprechender Codes auch in Farbe drucken können.

Irgendwo habe ich bestimmt noch mein Handbuch vom STAR LC 24/100 rumliegen, wo ich nach entsprechenden Codes nachschauen könnte, falls Bedarf besteht.
PP´s of STARSOFT Berlin
pps
Star Poster
Star Poster
 
Beiträge: 645
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Berlin

Beitragvon Rockford » Sa 6. Dez 2008, 15:02

Hallo PPS,

habe einen LX-800, da ist natürlich mit Farbwechsel nix drin. Danke trotzdem!


Gruss, Holger
Benutzeravatar
Rockford
Super Poster
Super Poster
 
Beiträge: 1368
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Esslingen

Beitragvon Rockford » So 7. Dez 2008, 23:12

Also, habe heute mal die Steuercodes ausprobiert, die Tabelle, die Hias angegeben hat, ist echt Gold wert(Danke nochmal dafür!). Mit den ESC-Codes ist es tatsächlich so einfach, wie man es sich wünscht.

Ein sehr,sehr einfaches Beispiel:
Code: Alles auswählen
10 OPEN #1,8,0, "P:"
20 ? #1; CHR$(27);"E";
30 ? #1; "Ein fetter Text"
35 ? #1; CHR$(27);"F";
40 CLOSE #1


Mit CHR$(27) bekommt das ESC als Steuerzeichen.

Wenn man das in sein eigenes Programm einbinden will, ist wichtig, dass das, was man an Steuerzeichen an den Drucker rausschickt, auch wieder am Schluss vor schliessen des Kanals rückgängig macht. Sonst sieht bei einem weiteren Druckvorgang das Ergebnis mit Sicherheit anders aus. Der Drucker verliert die Formatierung erst wieder beim aus- und wieder einschalten.

Vielleicht habe ich damit ja dem ein oder anderen weiter geholfen.

Viele Grüsse, Holger
Benutzeravatar
Rockford
Super Poster
Super Poster
 
Beiträge: 1368
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Esslingen

Beitragvon FlorianD » Mo 8. Dez 2008, 11:14

mache Formatierungen gehen auch mit einem CR/LF (Zeilenende) wieder auf "Normal" zurück.

Rapper würden übrigens
"Phatten Text"
drucken. :ro
RUN $E477
--
Benutzeravatar
FlorianD
Night&Day Poster
Night&Day Poster
 
Beiträge: 1615
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Frankfurt am Main

Beitragvon Rockford » Mo 8. Dez 2008, 17:29

Code: Alles auswählen
10 OPEN #1,8,0, "P:"
20 ? #1; CHR$(27);"E";
30 ? #1; "Yo, Baby!"
35 ? #1; CHR$(27);"F";
40 CLOSE #1



:mrgreen:

Holger :wink:
Benutzeravatar
Rockford
Super Poster
Super Poster
 
Beiträge: 1368
Registriert: Do 1. Jan 1970, 01:00
Wohnort: Esslingen


Zurück zu Programmierung



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast