Zurück Weiter Kapitel

Verwenden von Drucker-Escape-Sequenzen

Jeder Drucker verfügt über eine eigene Reihe von sog. Escape-Sequenzen, die von Programmen zur Steuerung seiner spezifischen Druckerfunktionen verwendet werden können. Darüber hinaus gibt es Standard-ANSI-Escape-Sequenzen, mit deren Hilfe auch spezifische Druckerfunktionen gesteuert werden können. Wenn Sie mit ANSI-Escape-Sequenzen arbeiten, können Sie ein Programm erstellen, das ohne Änderungen für alle Drucker verwendet werden kann, für die ein Amiga-Druckertreiber vorhanden ist. Es empfiehlt sich daher, die ANSI-Escape-Sequenzen zu verwenden. Achten Sie jedoch darauf, daß Sie diese nicht mit den spezifischen Escape-Sequenzen Ihres Druckers verwechseln, da sie beträchtliche Unterschiede zueinander aufweisen.

Das logische Amiga-Druckausgabegerät (PRT:) akzeptiert Standard-ANSI-Escape-Sequenzen. Der aktive Druckertreiber setzt ANSI-Escape-Sequenzen in Steuersequenzen um, die von Ihrem Drucker "verstanden" werden. Sie können z.B. Escape-Sequenzen verwenden, um Ränder einzustellen, Schriftarten wie Fett- und Kursivschrift zu aktivieren und Zeilenabstände einzustellen. Unterstützt Ihr Drucker eine angegebene Funktion nicht, wird sie ignoriert. Beachten Sie, daß die hier besprochenen Standard-ANSI-Sequenzen nicht denen in den Druckerhandbüchern entsprechen. In der Dokumentation zum jeweiligen Drucker finden Sie eine Liste der Funktionseinstellungen, die von Ihrem Drucker akzeptiert werden.

ANSI-Escape-Sequenzen werden in der Regel verwendet, wenn die Druckdatei direkt von der Shell an den Drucker gesendet oder Druckbefehle in ein Programm eingefügt werden.

Eine typische ANSI-Escape-Sequenz (hier "Fettschrift aktivieren") hat folgendes Format:

Esc[1m

Dies bedeutet, daß Sie folgende Tasten nacheinander drücken müssen: ESC, [, 1, m. In Escape-Sequenzen wird die Groß- und Kleinschreibung berücksichtigt. Zur Eingabe der Escape-Sequenz

Esc[4W

drücken Sie nacheinander die Tasten Esc, [, 4 und Umschalttaste-W.

Die Stellen, an denen dezimale Zahlenwerte eingefügt werden müssen, sind mit <n> markiert. Die Escape-Sequenz im folgenden Beispiel dient zum Einstellen des linken und rechten Randes:

Esc[<n>;<n>s

Geben Sie folgendes ein, um den linken Rand auf 5 und den rechten Rand auf 75 einzustellen:

Esc[5;75s

Gehen Sie wie folgt vor, um eine Escape-Sequenz aus der Shell heraus an den Drukker zu senden:

  1. Geben Sie folgendes ein, um die Tastatureingaben an den Drucker umzuleiten:

1> COPY * to PRT:

  1. Warten Sie, bis jegliche Disk-Aktivität beendet ist, und geben Sie z.B. folgende Escape-Sequenz ein:

Esc[4mUnterstrichen <Eingabetaste>

Zum Beenden der Umleitung der Tastaturausgabedaten an PRT: drücken Sie die Tastenkombination Ctrl-\.

Darüber hinaus können Sie Druckerbefehlsdateien erstellen, die mehrere Escape-Sequenzen enthalten. Dazu müssen Sie die Eingaben der Tastatur in eine Datei umleiten. Beispiel:

  1. Geben Sie folgendes ein, um die Tastatureingaben in die Datei "EscapeDatei" umzuleiten:

1> COPY * TO RAM:EscapeDatei

  1. Geben Sie z.B. folgende Escape-Sequenzen ein:

Esc[2"z (Hohe Druckqualität aktivieren)


Esc[2w (Schriftart "Elite" aktivieren)
Esc[1m (Fettschrift einschalte n)

  1. Drücken Sie die Tastenkombination Ctrl-\, um die Umleitung der Tastaturausgabedaten in die Datei zu beenden.
  2. Geben Sie folgendes ein, um diese Escape-Sequenzen an den Drucker zu senden:

1> COPY RAM:EscapeDatei TO PRT:

Standard-ANSI-Escape-Sequenzen

In der folgenden Liste sind die Drucker-ANSI-Escape-Squenzen für typische Textfunktionen von Matrixdruckern aufgeführt:


 

Funktion

Escape-Sequenz

Name

Drucker rücksetzen

Escc

aRIS

Drucker initialisieren

Esc#1

aRIN

Zeilenvorschub

EscD

aIND

Wagenrücklauf + Zeilenvorschub

EscE

aNEL

Umgekehrter Zeilenvorschub

EscM

aRI

Normaler Zeichensatz

Esc[0m

aSGR0

Kursivdruck EIN

Esc[3m

aSGR3

Kursivdruck AUS

Esc[23m

aSGR23

Unterstreichung EIN

Esc[4m

aSGR4

Unterstreichung AUS

Esc[24m

aSGR24

Fettdruck EIN

Esc[1m

aSGR1

Fettdruck AUS

Esc[22m

aSGR22

Vordergrundfarbe setzen

Esc[30m bis Esc[39m

aSFC

Hintergrundfarbe setzen

Esc[40m bis Esc[49m

aSBC

Normale Zeichendichte

Esc[0w

aSHORP0

Zeichendichte "Elite" EIN

Esc[2w

aSHORP

Zeichendichte "Elite" AUS

Esc[1w

aSHORP1

Engschrift EIN

Esc[4w

aSHORP4

Engschrift AUS

Esc[3w

aSHORP3

Breitdruck EIN

Esc[6w

aSHORP6

Breitdruck AUS

Esc[5w

aSHORP5

Schattendruck EIN

Esc[6"z

aDEN6

Schattendruck AUS

Esc[5"z

aDEN5

Doppeldruck EIN

Esc[4"z

aDEN4

Doppeldruck AUS

Esc[3"z

aDEN3

Textqualität (NLQ) EIN

Esc[2"z

aDEN2

Textqualität (NLQ) AUS

Esc[1"z

aDEN1

Hochstellung EIN

Esc[2v

aSUS2

Hochstellung AUS

Esc[1v

aSUS1

Tiefstellung EIN

Esc[4v

aSUS4

Tiefstellung AUS

Esc[3v

aSUS3

Zeile zurück zu Normal

Esc[0v

aSUS0

Teilzeile nach oben

Esc1

aPLU

Teilzeile nach unten

EscK

aPLD

Zeichensatz US

Esc(B

aFNT0

Zeichensatz Französisch

Esc(R

aFNT1

Zeichensatz Deutsch

Esc(K

aFNT2

Zeichensatz GB

Esc(A

aFNT3

Zeichensatz Dänisch I

Esc(E

aFNT4

Zeichensatz Schwedisch

Esc(H

aFNT5

Zeichensatz Italienisch

Esc(Y

aFNT6

Zeichensatz Spanisch

Esc(Z

aFNT7

Zeichensatz Japanisch

Esc(J

aFNT8

Zeichensatz Norwegisch

Esc(6

aFNT9

Zeichensatz Dänisch II

Esc(C

aFNT10

Proportionaldruck EIN

Esc[2p

aPROP2

Proportionaldruck AUS

Esc[1p

aPROP1

Proportionaldruck löschen

Esc[0p

aPROP0

Rand Proportionaldruck setzen

Esc[<n>E

aTSS

Automat. Linksbündig

Esc[5 F

aJFY5

Automat. Rechtsbündig

Esc[7 F

aJFY7

Automat. Randausgleich

Esc[6 F

aJFY6

Automat. Formatierung AUS

Esc[0 F

aJFY0

Zeichenabstand (formatiert)

Esc[3 F

aJFY3

Wort füllen (Automat. Zentrieren)

Esc[1 F

aJFY1

Zeilenabstand 1/8 Zoll (8 lpi)

Esc[0z

aVERP0

Zeilenabstand 1/6 Zoll (6 lpi)

Esc[1z

aVERP1

Seitenlänge <n>

Esc[<n>t

aSLPP

Perforation <n> (n >0) überspringen

Esc[<n>q

aPERF

Perforation überspringen AUS

Esc[0q

aPERF0

Linken Rand setzen

Esc#9

aLMS

Rechten Rand setzen

Esc#0

aRMS

Oberen Rand setzen

Esc#8

aTMS

Unteren Rand setzen

Esc#2

aBMS

Oberer + unterer Rand

Esc[<n>;<n>r

aSTBM

Linker + rechter Rand

Esc[<n>;<n>s

aSLRM

Ränder löschen

Esc#3

aCAM

Horizontaltabulator

EscH

aHTS

Vertikaltabulator

EscJ

aVTS

Horizontaltab. Löschen

Esc[0g

aTBC0

Alle Horizontaltab. Löschen

Esc[3g

aTBC3

Vertikaltabulator löschen

Esc[1g

aTCB1

Alle Vertikaltab. Löschen

Esc[4g

aTCB4

Alle Horizontal- und Vertikaltabulatoren löschen

Esc#4

aTBCALL

Standardtabulatoren setzen

Esc#5

aTBSALL

Erweiterte Befehle

Esc[<n>"x<s>

aEXTEND

Direkte Befehle

Esc[<n>"r<s>

aRAW

Hoch Zurück Weiter Kapitel