Ataquarium - WinDom & FreeType

Es gibt wieder einmal eine "gewöhnliche" Ausgabe. Nachdem in der letzten Ausgabe der XL ein Thema war, wäre es wohl etwas unkreativ, zum Lynx zu sprechen.

Wenn diese Ausgabe erscheint, sollten schon die ersten auf HighWire-basierten Spiele erschienen sein. Wir erinnern uns: in Ausgabe 9/2002 wurde ein Weg beschrieben, in HighWire eigene Seiten einzubauen und mit ein paar Zeilen Code den Web-Browser zu einem Quiz-Spiel umzufunktionieren. Eine neue Version des besagten Quiz-Spiels ist nun, basierend auf der letzten HighWire-Version, erschienen - übrigens mit (vorläufigem) Online-Support. Für die Zukunft wäre da noch einiges denkbar: Warum sollte es keine nachladbaren Fragen geben, oder Highscore-Listen im Internet? Internet-fähige Spiele sind mit einem Web-Browser in einem gewissen Rahmen möglich, auch wenn Echtzeitduelle ("Atari Live" ;)) wohl etwas mehr Aufwand erfordern.

Um das Umwandeln von HighWire in eine andere Anwendung etwas angenehmer zu machen, gibt es jetzt in defs.h eine Reihe neuer DEFINEs, z.B.:

#define _HIGHWIRE_RSC_       "highwire.rsc"

Beim Dr. Who Quiz steht dort natürlich "dr_who.rsc" statt "highwire.rsc".

Ein weiteres DEFINE ändert den Programmnamen:

#define _HIGHWIRE_FULLNAME_ "HighWire"

Der Programmname wird u.a. beim Anmelden und bei Appgetlongname (GemScript) benutzt.

Wichtig für angehende C/HTML-Autoren ist die Erwähnung in der Dokumentation, dass die Anwendung auf HighWire basiert und somit auch Fontlist benutzen werden kann, um die Schriftart zu ändern.

Es wird sicher in einer der nächsten Ausgaben wieder ein HW-Special geben, aber nun zu etwas unangenehmen...

Skandal: Fehler im Ataquarium!

Oliver Heun, ein Mitglied der Demo-Gruppe Paranoia, machte mich auf einen Fehler im VCS-Ataquarium aufmerksam - und es war mir doch gleich so, als ob mich irgend etwas seit der Ausgabe 11/2002 verfolgt! Zum Glück ist es kein grober Fehler, sondern betrifft einige Details.

So ist der größte Unterschied zwischen 6502 und 6507, das im 6507 keine Interrupt-Lines vorhanden sind. Da der Grafikchip zeilenbasiert ist, ergibt sich folgendes Problem:

VCS2600-Programmierer mussten ständig Taktzyklen mitzählen, damit am Ende der Zeile auch die richtigen Werte im Grafikchip für die nächste Zeile stehen. Da haben es Programmierer des VCS5200/7800 erheblich leichter, da auf diesen Systemen der Rasterinterrupt benutzt werden kann.

Programmierwettbewerb

Programmierer sind doch alle Star Trek-Fans, dachte sich Baldrick a.k.a. Dan Ackerman. Und da in jedem Programmierer ein Klingone steckt, wurde ein Programmierwettbewerb ins Leben gerufen, bei dem es nur um die Ehre geht (die anderen klingonischen Lebensgewohnheiten wurden glücklicherweise nicht berücksichtigt). Ergebnisse standen vor Redaktionsschluß leider noch nicht fest.

WinDom: jetzt in LGPL

Viele neue Funktionen und Bugfixes: Windom 1.20

Dominique Béréziat hat die Version 1.20.2 von WinDom veröffentlicht und gleichzeitig den Status geändert: WinDom steht unter der Gnu Lesser General Public Licence.

Unter der Haube hat sich eine ganze Menge getan. So ist der Redraw-Bug beim Verändern von Framefenstern verschwunden. Ganz neu sind erweiterte Slider-Funktionen und die neuen Objekte XBOXLONGTEXT und XEDIT. Ersteres ist ein Textobjekt, das sich über mehrere Zeilen ausdehnen kann. XEDIT ist das Edit-Objekt, das praktisch eine unbegrenzte Menge (begrenzt durch den Speicher) Text aufnehmen kann.

Als Zusatz zu WinDom gibt es neuerdings DFRM, eine Library um Dialoge mit einfachen C-Befehlen zu erstellen, also ganz ohne RSC-Datei. Die Vorteile liegen darin, das auf eine RSC-Datei verzichtet werden kann, aber eine einfache Modifikation sehr leicht im Quellcode möglich ist. Der WinDom-Autor nennt auch die pixelgenaue Positionierung als Vorteil - aber das gilt eigentlich als verpönt.

Voraussichtlich ab der nächsten Ausgabe wird es einen Kurs zu WinDom geben.

Freie Schriften für freie Bürger

Die geknechteten Programmierer haben genug: gemeinsam mit ihren proletarischen Brüdern und Schwestern erheben sie sich, um der Bourgeoisie in Form von NVDI und SpeedoGDOS den Kampf anzusagen: "Freie Schriften für freie Bürger". NVDI überließ Speedo die Verhandlungen und da Speedo das Lebensmotto der Ents, "keine Eile", beherzigt hatte, schien erst einmal für ein paar Jahre Ruhe auf der Straße. Doch dann erschien FreeType.

FreeType ist ein Open Source-Projekt und ermöglicht das Nutzen einer ganzen Reihe von Fontformaten. In der Unix-Welt ist es daher recht beliebt, auf der Windows-Plattform weniger, da dort die Microsoft-eigenen Lösungen zu dominierend sind. Angeblich gab es sogar einmal einen Versuch, aus FreeType einen GDOS-Ersatz zu machen. Das TTF-GDOS soll angeblich auf einer älteren FreeType-Version basieren, aber mangels genauer Kenntnisse über dieses eher unbekannte GDOS konnte dies nicht verifiziert werden.

Die Library stellt allerdings keine Druckertreiber oder besondere Grafikfunktionen zur Verfügung, sondern spezialisiert sich ganz auf Schriften. Die unterstützten Formate sind reichhaltig: True Type, OpenType, Type1, CID, CFF, Windows FON/FNT und X11 PCF. Dabei werden sowohl Vektor- als auch Bitmapschriften unterstützt. Da es eher selten vorkommt, das ein Programm alle Formate benötigt, läßt sich jedes einzelne Format deaktivieren - entsprechend kleiner wird dann die Library. Ein Minimal-FreeType wird von den Entwicklern auf dreißig KB geschätzt.

FreeType ante Porthos

Die (Atari-)Rückkehr feiert FreeType dank des PDF-Viewers Porthos. Einer der Kritikpunkte an Porthos waren die naturgemäß pixeligen Schriften. Macintosh- und Windows-Systeme besitzen eine eingebaute Kantenglättung, die ab einer bestimmten Schriftgröße aktiv wird. Die Kantenglättung sorgt für weichere Schriften und erhöht die Lesbarkeit.

Erst seit Version 2.0.1 gibt es ein Cache-System, um einmal umgewandelte Zeichen nicht erneut umwandeln zu müssen.

Als Pixel-Ausgabeformat werden nur zwei unterstützt: 1 Bit Monochrom und 8 Bit Graustufen. Sollen die Zeichen auf einen anderen Hintergrund gezeichnet werden, z.B. eine 24 Bit Grafik, muss das Programm eine externe Grafiklibrary benutzen. Ebenfalls nicht von der Library unterstützt wird Kerning, Blocksatz oder andere Layout-Funktionen. Es ist allerdings geplant, eine Text-Layout-Engine separat von FreeType zu entwickeln.

Wolfgang Domröse hat diese Library auf den Atari portiert und jeder der möchte, kann sie von ihm anfordern.

FreeType Layout

FT Layout wird die Ergänzung zu FreeType heißen und über der FT-Library sitzen. Wie schon bei FreeType achten die Programmierer auch bei der Layout-Engine darauf, dass der Quelltext mit so ziemlich jedem Ansi-C-Compiler lauffähig sein sollte - und das ohne dass der Compiler Dutzende von Warnungen ausspuckt. FT Layout wird Unicode-Text unterstützen und bidirektionalen Textfluß für Sprachen wie Arabisch oder Hebräisch. Text kann dann auch vertikal fließen.

Mit der neuen Library kommt auch voller OpenType Layout Support und damit ein intelligentes Gruppieren von Zeichen zueinander.

FreeType als GDOS

Es ist tatsächlich angedacht, die FreeType-Library als GDOS-Ersatz zu benutzen. Der bisher wenig bekannte VDI-Ersatz fVDI soll in absehbarer Zeit auch die Ausgabe von Vektorfonts beherrschen. Damit würde fVDI auch für noch mehr Personen interessant werden - bisher wird es nur von den wenigen Eclipse-Besitzern und Aranym-Usern verwendet.

Um NVDI aber endgültig zu übertrumpfen, fehlt noch einiges. Druckertreiber sind bisher nicht geplant.

Online-Tipp

Wer FreeType ganz unverbindlich einmal online ausprobieren möchte, kann dies unter [2] tun. Unter der etwas komplizierten Internet-Adresse verbirgt sich ein einfaches Web-Formular. Ein Text kann frei gewählt werden, darunter stehen verschiedene gängige Fonts zur Auswahl. Die Schriftgröße wird aus einigen vorgegebenen ausgewählt. Die letzten zwei Optionen sind Hinting (verbessert die Ausgabequalität) und Anti-Aliasing (Kantenglättung). Letztere fällt aber nur bei höheren Fontgrößen auf.

Ein CGI-Skript generiert aus den Formulareingaben und der FreeType-Library ein GIF-Bild. Der Qualitätsunterschied, wenn Anti-Aliasing ausgeschaltet wird, ist dramatisch: Die Schrift wirkt dünn und verpixelt.


Mia Jaap
Aus: ST-Computer 01 / 2003, Seite 27

Links

Copyright-Bestimmungen: siehe Über diese Seite