Zum Artikel
V.O.I.C.E Virtual OS/2 International Consumer Education
Juni 2006
A A A
Artikel

- Mark Dodel: Und der Os/2car geht an...
- Ed Durrant: Mobile Broadband unter OS/2 in Australien - Benutzung eines LG8330 3G Handys mit OS/2 und eCS
- Lon Hooker: USB-Wechselmedien - Einrichtung und Gebrauch - Häufig gestellte Fragen - FAQ
- Peter Koller: Maul Publisher plus Unicode
- Mark Dodel: OS/2 und WLAN "g"
- Arthur van Egmond: Erstellung einer Datenbank mit Lotus Smartsuite - Teil 4
- Tips
- Leserbriefe, Addenda, Errata

Aktives GUI-Element

Statisches GUI-Element

Quelltext

WPS-Objekt

Datei/Pfad

Befehlszeile

Inhalt Eingabefeld

`[Tastenkombination]`

mehr

# Maul Publisher plus Unicode

von Peter Koller, © Juni 2006

Für die Erfüllung des heutigen Bedarfs nach fortgeschrittenen Bearbeitungsfunktionen ist Unicode wesentlich. Maul Publisher V3.06 ist die erste Version, die von der Unicode-Bibliothek in neueren Versionen von OS/2 und eComStation Gebrauch macht. Was aber bedeutet dies für den Endanwender?

## Was ist Maul Publisher?

Maul Publisher ist ein professionelles Desktop-Publishing-Programm, mit dem sich praktisch sämtliche Ausdrucke anfertigen lassen, wie man sie auf allen Dingen eines Haushaltes sehen kann. Layouts für Zeitungen, Karten, Bücher, Etiketten, Aufkleber, Poster, Diagramme, Formulare und sogar Designentwürfe für Baupläne oder Wohnungseinrichtungen sind damit einfach möglich.

In der Hauptsache führt die Anwendung Text und Bilder auf einer Seite zusammen. Nachdem die Seite erstellt wurde, kann sie ausgedruckt, daraus eine PDF-Datei erzeugt oder sie in ein Bild oder eine Metadatei umgewandelt werden. Maul beinhaltet mehrere äußerst leistungsfähige Werkzeuge zur Handhabung von Bildern und Text und wurde im besonderen darauf ausgelegt, das für den jeweiligen Drucker bestmögliche Ergebnis zu liefern.

Da die Anwendung ihre Ausgabe auf den Drucker abstimmt, ist es zwingend erforderlich, einen Drucker installiert zu haben. Die Auflösung ist bei Druckern vier- bis achtmal höher als bei Bildschirmen. Aus diesem Grund und durch die Minimierung des Rundens sind Ausdrucke von Maul im allgemeinen außergewöhnlich scharf.

## Was ist Unicode?

Unicode ist auf die Unterstützung von Zeichensätzen mit mehr als 255 codepoints ausgelegt. Dies bietet mehrere wesentliche Vorteile:

- Der Zeichensatz kann mehrere Sprachen unterstützen
- Es stehen mehr codepoints für Symbole und spezielle Graphiken zur Verfügung
- Die Anwendung muß sich weniger mit der Verarbeitung von Sprachen und Zeichensätzen beschäftigen
- Der Unicode-API bietet weiterentwickelte Funktionen zum Prüfen von Zeichen

Mit Version 3.06 wurde bei Maul Publisher der OS/2-Unicode-API eingeführt, und dies hat signifikante Auswirkungen auf die Entscheidungen der Anwendung, wo Text angeordnet wird und welcher.

## Maul und Unicode

Der Unicode-API stellt wesentlich hilfreichere Funktionen zum Prüfen von Zeichen zur Verfügung. Dies mag nur geringe Auswirkungen bei westlichen Sprachen zeigen, bei denen Wörter durch Leerzeichen getrennt werden, führt jedoch zu wesentlichen Verbesserungen bei Sprachen, in denen dies nicht der Fall ist, wie z.B. bei Japanisch. Durch Prüfung auf die Attribute`_punctstart` und `_punctend` kann Maul nun Piktogrammzeichenketten in Anführungszeichen korrekt formatieren.

Durch die zusätzlichen Zeichen, die über Unicode zur Verfügung stehen, ist Maul nun erstmals in der Lage, intelligente Anführungszeichen zu unterstützen. Ich nenne dies Intelligente Anführungszeichentext, weil der Ausdruck smart quotes bereits von MS Office verwendet wird. Und außerdem kann Maul es besser:

Abb. 1: Beispiel für intelligente Anführungszeichen

Beim Unicode-Zeichensatz können Zeichen anhand eines Namens angesprochen werden, so daß eine Anwendung nicht den codepoint eines bestimmten Zeichens kennen muß. So wurde es möglich, ein Werkzeug für Aufzählungen und Numerierungen hinzuzufügen, welches das Anlegen von Listen in einem Textartikel wesentlich vereinfacht.

Abb. 2: Beispiel Aufzählung und Numerierung

## Maul und Zeichenprüfung

Da Maul nur von einer Person entwickelt wurde — mir —, kann ich nur raten, welche Zeicheneigenschaften bei der Formatierung eines Textartikels zu verwenden sind. Das heißt, daß ich die Hilfe der Endanwender — also Ihre — benötige um festzulegen, welche Prüfungen durchgeführt werden sollen.

Die Zeichenprüfung wird durchgeführt, um Sätze in Wörter trennen zu können. Die Wörter bestimmen dann, wieviel Text in eine Zeile paßt. Wo es angebracht ist, werden Wörter, die nicht in eine Zeile passen, an den Silben getrennt.

Normalerweise wird bei westlichen Sprachen das Ende eines Wortes durch ein Leerzeichen bestimmt. Es gibt jedoch Situationen, wo kein solches Leerzeichen zur Verfügung steht. Dies kann beispielsweise geschehen, wenn zwei Wörter durch ein Komma getrennt werden, wie bei hello,there. Maul kann diese Zeichenkette nun aufteilen, indem auf Zeichen mit dem Attribut `break` geprüft wird. Das Leerzeichen ist für solche Zeichen mit Attribut `break` ein klassisches Beispiel.

Bei Piktogrammsprachen (wie Japanisch) besitzt jedes Zeichen ein solches `break`-Attribut. Dieses Verhalten ist zu modifizieren, wenn das Piktogramm in Anführungszeichen steht. Erreichen läßt sich dies durch die Verwendung des Attributes `attach`. Das Attribut `attach` übersteuert das `break`-Attribut des vorherigen Zeichens. Zeichen, bei deren Prüfung der Unicode-API `_punctend` liefert, sind sowohl mit einem `break`- als auch einem `attach`-Attribut versehen. Bei allen alphanumerischen Zeichen ist kein Attribut gesetzt.

Es ergibt sich, daß sich Zeichenketten in jeder beliebigen Sprache mit nur den beiden obigen Attributen trennen lassen. Unteres Beispiel zeigt, wie dies bei einer Kanji-Zeichenkette funktioniert. Die Attribute sind in der zweiten Zeile dargestellt. Die Kanji-Zeichenkette hat keine besondere Bedeutung.

Abb. 3: Beispiel für Attribute

Aufgrund der obigen `attach`-Attribute ab, schließen die getrennten Wörter die abschließenden Anführungszeichen mit ein.

Sind diese Attribute fehlerhaft, beispielsweise ist bopomofo nicht als trennend markiert, führt dies zu Fehlern bei der Textformatierung. Da ich diese Sprachen selbst nicht nutze, müssen Sie mir mitteilen, wenn etwas nicht funktioniert!

## Einschränkungen von Unicode

Da Maul Publisher nullbasierte Steuerzeichensequenzen namens LOLs einsetzt, wird nur UTF-8 Unicode unterstützt. Die Nummer des Unicode-Zeichensatzes UTF-8 lautet 1208. Bei UTF-8 Unicode handelt es sich um ein Format, welches von Systemen verarbeitet werden kann, die auf Zeichenbasis arbeiten. Es zeichnet sich dadurch aus, daß es nie mit einer Null beginnt. Der UTF-8 Unicode Zeichensatz kann aus codepoints mit 5 oder mehr Byte Länge bestehen.

Derzeit unterstützt OS/2 nur codepoints bis zu einer Länge von 3 Byte, und Maul ist darauf ausgelegt. Damit steht der volle Zeichenumfang der mit OS/2 kompatiblen Unicode-Schriften zur Verfügung. UTF-8 Unicode benötigt mehr Speicherplatz als normaler 16-Bit-Unicode, und zum Prüfen von UTF-8-Zeichen müssen diese zuerst in 16-Bit-Unicode umgewandelt werden.

Der Dialog Zeichen einfügen des Maul Publisher zeigt die in der Datei vorgefundene Byte-Folge, deren Entsprechung in 16-Bit-Unicode, die Zeichenattribute und, wo möglich, den Namen des Zeichens an.

Die vollständige Liste der von Maul angezeigten Attribute lautet:

    CHARCLASS_BREAKING 0x001
    CHARCLASS_ATTACH   0x002
    CHARCLASS_SPACE    0x004
    CHARCLASS_HYPHEN   0x008
    CHARCLASS_QUOTE    0x010
    CHARCLASS_RQUOTE   0x020

Das rechte Anführungszeichen im obigen Beispiel (Abb. 3) hat also den Code [0033]:

Abb. 4: Dialog "Zeichen einfügen"

Übersetzung: Christian Hennecke
Korrektur: Karl-Heinz Markus

##### Daten und Quellen

Maul Publisher 3.06
Hersteller: Maison d'Anglais
Preis: 113,85 €

Maison d'Anglais Homepage: http://www.manglais.com