6.9. Zur Kodierung von ASCII-Text

Bei einfachem Text ist jedes Zeichen als Zahl kodiert abgespeichert. Welche Zeichendarstellung einem Zeichencode entspricht ist in Code-Tabellen festgelegt. Je nachdem, welche Code-Tabelle ein Anwendungsprogramm bzw. der Druckerfilter verwendet, kann die Darstellung desselben Codes auf dem Bildschirm und auf dem Drucker verschieden sein.

Bei Standardzeichensätzen sind nur Codes von 0 bis 255 möglich. Die Zeichen mit den Codes 0 bis 127 sind die ASCII-Zeichen (insbesondere die normalen Buchstaben, Ziffern und Sonderzeichen, aber keine länderspezifische Sonderzeichen), die immer gleich festgelegt sind.

Die Codes 128 bis 255 werden für länderspezifische Sonderzeichen (zum Beispiel Umlaute) benutzt. Da es aber deutlich mehr als 128 verschiedene länderspezifische Zeichen gibt, sind die Codes 128 bis 255 nicht mehr überall gleich belegt, sondern je nach geographischer Lage wird derselbe Code für verschiedene länderspezifische Zeichen verwendet.

ISO-8859-1 (bzw. Latin 1) ist die Kodierung für Westeuropäische Sprachen und ISO-8859-2 (bzw. Latin 2) ist die Kodierung für Zentral- und Osteuropäische Sprachen. So bedeutet zum Beispiel der Code 241 (octal) gemäß ISO-8859-1 ein umgedrehtes Ausrufungszeichen, aber gemäß ISO-8859-2 ein großes A mit Ogonek. ISO-8859-15 entspricht im wesentlichen ISO-8859-1, aber insbesondere hat ISO-8859-15 unter dem Code 244 (octal) das Eurozeichen. Da die deutschen Umlaute in ISO-8859-1 und ISO-8859-2 vorhanden und gleich codiert sind, kann bei deutschen Texten ohne Eurozeichen sowohl ISO-8859-1 als auch ISO-8859-2 verwendet werden.

6.9.1. Veranschaulichung

Alle Befehle sind in einer einzigen Zeile einzugeben ohne den Rückstrich (\) am Zeilenende.

ASCII-Text Beispieldatei erzeugen mit:

echo -en "\rCode 241(octal): \
\241\r\nCode 244(octal): \244\r\f" >example
    

6.9.1.1. Anzeige am Bildschirm

Öffnen Sie unter der graphischen Oberfläche drei Terminalfenster mit den folgenden drei Befehlen:

xterm -fn -*-*-*-*-*-*-14-*-*-*-*-*-iso8859-1 -title iso8859-1 &
xterm -fn -*-*-*-*-*-*-14-*-*-*-*-*-iso8859-15 -title iso8859-15 &
xterm -fn -*-*-*-*-*-*-14-*-*-*-*-*-iso8859-2 -title iso8859-2 &
    

In jedem der Terminalfenster lassen Sie die Beispieldatei anzeigen mit dem Befehl cat example.

In iso8859-1 wird angezeigt: Code 241 als umgedrehtes Ausrufungszeichen (Spanisch) Code 244 als Kreis mit Häkchen (allgemeines Währungssymbol)

In iso8859-15 wird angezeigt: Code 241 als umgedrehtes Ausrufungszeichen (Spanisch) Code 244 als Eurosymbol

In iso8859-2 wird angezeigt: Code 241 als großes A mit Krummhaken (A mit Ogonek) Code 244 als Kreis mit Häkchen (allgemeines Währungssymbol)

Wegen der festgelegten Kodierungen können nicht beliebige länderspezifische Sonderzeichen gleichzeitig verwendet werden. So kann zum Beispiel das Eurosymbol nicht zusammen mit einem A mit Ogonek in demselben Text dargestellt werden.

Weitere Informationen in der jeweils korrekten Darstellung: Zu iso8859-1: man iso_8859-1. Zu iso8859-2: man iso_8859-2. Zu iso8859-15: man iso_8859-15.

6.9.1.2. Ausdruck

Je nach Kodierung der jeweiligen Druckerwarteschlange erfolgt der Ausdruck von ASCII-Text (zum Beispiel der Ausdruck der Datei example) analog zu diesen Fällen. Der Ausdruck von Dokumenten, die mit Textverarbeitungssystemen erstellt wurden, ist davon normalerweise unbeeinflusst, denn Textverarbeitungssysteme liefern zur Druckausgabe PostScript und nicht ASCII-Text.

Wird die Datei example gedruckt, dann erhält man den Ausdruck in der Kodierung, die im Drucksystem für ASCII-Text verwendet wird. Mit a2ps kann man die Datei example nach PostScript umwandeln und dabei die Kodierung individuell festlegen:

a2ps -1 -X ISO-8859-1 -o example-ISO-8859-1.ps example
a2ps -1 -X ISO-8859-15 -o example-ISO-8859-15.ps example
a2ps -1 -X ISO-8859-2 -o example-ISO-8859-2.ps example
     

Werden die PostScript-Dateien example-ISO-8859-1.ps, example-ISO-8859-15.ps und example-ISO-8859-2.ps gedruckt, dann erhält man den Ausdruck in der Kodierung, die jeweils mit a2ps festgelegt wurde.