Freefont, TrueType und Muster mit The Gimp

ArticleCategory:

Graphics

AuthorImage:

[Photo of the author]

TranslationInfo:[Author + translation history. mailto: or http://homepage]

Original in fr André Pascual

fr to en Scott Rutherford

en to de Katja Socher

AboutTheAuthor:

Ursprünglich war er technischer Zeichner und ist jetzt Lehrer für Industrietechnologie, speziell CAD.
Design und Desktop Publishing, vor allem 3D, ist eine seiner Leidenschaften.

Abstract:

Durch die Tutorien "Pseudo 3D" und "Feuereffekte" erhielt ich viele Emails, zum großen Teil wegen der Schwierigkeit der vorgeschlagenen Übungen. Natürlich war es nur eine Schwierigkeit für Anfänger. Der erfahrene Linuxbenutzer läßt sich durch einen fehlenden Font oder ein fehlendes Muster nicht aufhalten: er würde bald die Fonts installieren oder einen geeigneten Weg zum Speichern finden, was bei meinen Emailschreibern nicht der Fall war. Jeder war mal Anfänger und wer ist es nicht immer noch in bestimmten Bereichen von Linux? Deshalb zielt dieser Artikel auf den Anfänger ab, obwohl auch die puristen unter den Linux Fans nicht zu kurz kommen werden.

ArticleIllustration:

[Illustration]

ArticleBody:

Vorbereitungen

Mandrake 8.0 und The Gimp 1.2.1 dienten als Referenzpakete für diesen Artikel. Wenn man andere Versionen benutzt, sind die Verzeichnisstruktur, die Indexe oder das dropdown Menü vielleicht von dem in diesem Text beschriebenen verschieden. Sollte dies der Fall sein, sind Anpassungen an die spezielle Konfiguration erforderlich..
Wenn ich gedruckte Zeichen diskutiere, werde ich die Ausdrücke Fonts und Stile komplett austauschbar benutzen. Füllmuster werden entweder als Muster oder Motive bezeichnet. Anstelle von XFree86, dem offiziellen Namen, werde ich einfach von X sprechen.
Ebenso werde ich MC sagen,wenn ich von dem Midnight Commander spreche, der das Verwalten von Dateien erlaubt, ohne tiefgreifendes Wissen der Grundfunktionen und seiner Vielzahl an Optionen zu besitzen. Benutzer von Norton Commander und Xtree Gold unter DOS, oder WinCommander unter Windows befinden sich auf bekanntem Terrain. Das beginnt schon mit den Funktionsknöpfen, die dieselbe Verteilung in MC wie im WinCommander haben! Denke daran, pragmatisch zu sein. Es ist ohne Zweifel besser, etwas funktionales und unbeholfenes zu machen als etwas hochentwickeltes und nicht funktionales.


Installation von Freefont und Sharefont

Die Script-fu's aus Gimp benutzen per default Fonts, die in verschiedenen Distributionen vielleicht nicht automatisch installiert sind. Diese Fonts kommen in zwei Paketen: Freefont und Sharefont. Das erstere ist frei und das letztere wird unter der Sharewarelizenz vertrieben, aber beide sind sehr interessant. Zweifellos machen sie einen großen Unterschied in den Präsentierfähigkeiten von X.



[Figure 1]
Abbildung 1.


Diese zwei Pakete sind als .tgz Archive dank Christoph Lameter unter der folgenden Adresse verfügbar:
Einige Seiten im Internet (z.B. http://ibiblio.org/pub/Linux/X11/fonts/, ibiblio war früher bekannt als metalab oder sunsite), und manchmal kann man sie auf den CDs von Zeitschrifen bekommen. Linux Magazine France Number 9 stellt sie in einem Verzeichnis auf der begleitenden CD, genannt /Gimp/fonts zur Verfügung.
Nehmen wir die Magazine CD als ein Beispiel, dann können die Fonts wie folgt installiert werden:

Wenn diese Option nicht im Menü ist, gehe aus MC (F10) heraus, während der Kursor noch auf das Fenster zeigt, das die kopierten Dateien enthält. Wenn du dann den Aufwand, die folgende Zeile
mc () MC=`/usr/bin/mc -P "$@"`; [ -n "$MC" ] && cd "$MC"; unset MC ;
zu .bashrc hinzuzufügen, auf dich nimmst, findest du dich im ausgewählten Verzeichnis wieder.
Wenn nicht, dann gehe dorthin durch Tippen von
cd /usr/X11R6/lib/X11/fonts
und dekomprimiere dann direkt durch Benutzen von:
tar xvfz *.tgz

Dadurch erhältst du zwei neue Verzeichnisse, eines genannt: freefont und das andere: sharefont. Die .tgz Archive können jetzt gelöscht werden.
Freefont enthält 79 Fonts, fast alle davon brauchbar, und Sharefont enthält 22.



[Figure 2]
Abbildung 2.


Jedes Verzeichnis beinhaltet auch eine spezielle Datei namens fonts.dir, die die Charakteristiken jedes Fonts von X beschreibt. Dies bedeutet, daß du nicht mkfontdir laufen lassen mußt, um diese Datei zu generieren.
Die Fonts werden von X beim nächsten Start geladen, aber nur, wenn du ihm zuerst erzählst, daß es sie benutzen muß. In älteren Distributionen mußte man die folgenden Zeilen zu /etc/X11/XF86Config, im Abschnitt "Files" hinzufügen:
FontPath "/usr/X11R6/lib/X11/fonts/freefont"
FontPath "/usr/X11R6/lib/X11/fonts/sharefont"
In Mandrake 8.0 wird jedoch ein Fontserver benutzt. Um die Fonts zu dem Fontsserverpfad unter Benutzung der chkfontpath utility hinzuzufügen:

chkfontpath --add /usr/X11R6/lib/X11/fonts/freefont/
chkfontpath --add /usr/X11R6/lib/X11/fonts/sharefont/
Starte den font server erneut:

/etc/rc.d/init.d/xfs restart

Wenn du im grafischen Mode und nicht im Konsolemodus bist, gelten die folgenden Anweisungen immer noch, wenn man sie in ein Terminal (rxvt, kvt, wmterm...) eingibt. Jedoch sind die Fonts dann nicht sofort verfügbar, sie werden nicht ohne Neustart von X geladen oder dem Eingeben der folgenden Befehle in das noch offene Terminal:
xset fp+ /usr/X11R6/lib/X11/fonts/freefont
xset fp rehash
xset fp+ /usr/X11R6/lib/X11/fonts/sharefont
Xset fp rehash

Ergebnisse

Um zu überprüfen, daß die Fonts geladen werden, laß

xlsfonts | egrep 'sharefont|freefont'
laufen
oder starte xfontsel, oder einfach den KDE font manager.
Die Fonts sind jetzt von allen (nun nicht wirklich) X Applikationen nutzbar.
Die Fonts können in einer Tabelle, wie in diesem Atrikel, durch Benutzen von Gimp mit den folgenden Befehlen zusammengruppiert werden :
xtns> Script-Fu> Utils> Font Map.
Wichtig: es ist ein nicht-verzeihendes Werkzeug. Ein Fehler beim Eingeben des Namens von einem Font und du wirst wieder an den Anfang zurückgeschickt. Der beste Weg, um darum herum zu arbeiten, ist, den KDE font manager gleichzeitig mit The Gimp offen zu haben. Dadurch kannst du den Namen des Fonts im Manager sehen sowie zur gleichen Zeit in dem sample field. Abbildung 3 zeigt einige von diesen Fonts, die nützlich sind zum Erstellen von wunderlichen Logos oder Referenzbuchstaben.


[Figure 3]
Abbildung 3.


Benutzen von True Type

Diese neu installierten Fonts sind sehr interessant, aber vielleicht hast du eine Windows Partition auf der Festplatte, mit seinen Legionen von wunderschön gearbeiteten True Type fonts? Wenn du kein Windows hast, dann kannst du die True Type fonts auch von verschiedenen Seiten im Internet wie http://hugemcgriffin.com/fonts/a/, http://www.fontguy.com/, http://www.freepcfonts.com/index.html, ... herunterladen. Es ist möglich, sie zu benutzen.
Die neueste Linuxdistribution und solche, die kommen werden, fassen natürlich ihren Gebrauch ins Auge. Dies gilt nicht für ältere Distributionen wie Mandrake 5.3
Dies gesagt, existiert zumindest eine Lösung. Sie kommt in der Form von einem Server namens Xfstt (eine einfache ausführbare Datei von ca.130 Kb nach der Kompilierung) verfügbar unter der folgenden Adresse (unter anderen): ftp://sunsite.unc.edu/pub/Linux/X11/fonts/.

Das Archiv, das du haben möchtest, heißt Xfstt-0.9.10.tgz (oder die neueste Version) und ist ca.80Kb groß. Die Versionsnummern zeigen, daß sich das Programm noch in der Entwicklung befindet, aber es funktioniert ohne größere Probleme.
Vor dem Kompilieren ist es notwendig, das Gelände vorzubereiten durch das Erstellen eines Verzeichnisses, um die True Type fonts zu empfangen, so wie, /usr/share/fonts/truetype/ (mkdir /usr/share/fonts/truetype/ oder F7 in MC). Dann kopiere die erforderlichen Fonts in dieses Verzeichnis oder erzeuge einen symbolischen Link (F9 in MC, gefolgt von File, dann Symlink),der auf das Fontverzeichnis unter Windows zeigt. In meiner Einstellung /usr/share/fonts/truetype/ enthält der Link winfonts, der auf /mnt/Win98/windows/fonts zeigt, wobei /mnt/Win98 der Mountpunkt meiner Windowspartition ist.
Nun kann die Kompilierung des Programs beginnen, um dies zu tun, gehe in das Verzeichnis, das beim Dekomprimieren des Archivs (/tmp/xfstt0910) erzeugt wurde und führe die folgenden Zeilen aus: make xfstt && make install
Wenn die Kompilation beendet ist, ist das ausführbare binary (kleine Programm) xfstt in/usr/X11R6/bin installiert. Es bleibt nun noch, dem Server xfstt zu sagen, welche Fonts er benutzen wird. Führe den Befehl :
xfstt --sync --dir /usr/share/fonts/truetype aus.
Dies hat den Effekt, zwei Beschreibungsdateien in /usr/share/fonts/truetype zu erzeugen, genannt ttinfo.dir und ttname.dir.
Der Server wird durch Benutzen des Befehls: xfstt --dir /usr/share/fonts/truetype & gestartet.
Bei der Ausführung scheint jedoch nichts zu passieren: diese Fonts sind nur für X verfügbar, nicht im Textmodus und wenn du in X bist, dann ist es notwendig, X zu sagen, daß es sie laden muß. Dies kann durch das Eingeben des folgenden Befehls erreicht werden:
xset +fp unix/:7100
Nachher verifiziere mit "xlsfonts | grep ttf-" oder xfontsel oder dem KDE font manager, daß die TrueType fonts verfügbar sind; sie sollten von allen (nun, beinahe) Applikationen, die unter X laufen, benutzbar sein. StarOffice5 erlaubt ihren Gebrauch in StarDraw, StarImpress, StarCalc, aber seltsamerweise nicht in StarWriter, vielleicht gibt es eine Option, um sie zu aktivieren, aber wenn dem so ist, ich konnte sie nicht finden. In jedem Fall kann man sie mit The Gimp benutzen, wie man in Abbildung 4 sehen kann. Es gibt auch ein freefont plugin für Gimp. Wenn du dieses Plugin installiert hast, dann hast du noch eine andere Methode, um TrueType fonts in Gimp zu benutzen. Anders als der xfstt server macht das freefont plugin die Fonts natürlich nicht generell für alle Applikationen verfügbar.



[Figure 4]
Abbildung 4.


Die Programmdokumentation sagt, daß es möglich ist, zu XF86Config, in dem Dateiabschnitt die folgende Zeile hinzuzufügen: FontPath "unix/:7100"; dies hat bei mir jedoch nie funktioniert; es sagt auch, xfstt vor X zu starten, dann die anderen Befehle in einem Terminal auszuführen, aber mit dem Risiko, sie zu vergessen. Die einfachste Methode ist, die Dinge durch Schreiben von zwei kleinen Skripten zu automatisieren, eines, um den Server zu starten und das andere, um ihn zu schließen. Vergiß nicht, die Skripte ausführbar zu machnen (in MC, F9, dann File und Chmod), und dann speichere sie z.B. in /usr/local/bin. Das Aktivierungsskript könnte soetwas wie ttf genannt werden und das Deaktivierungsskript dttf. Das erste enthält die folgenden Zeilen:
#!/bin/sh
xfstt --sync --dir /usr/share/fonts/truetype
xfstt &
xfstt +fp unix/:7100

Und das zweite enthält einfach:

#!/bin/sh
xset -fp unix/:7100

Dies ist die Lösung, die ich benutze: sie funktioniert.

Erzeugen von Mustern

Die Muster (Bilder) sind nichts weiteres als image bitmap Dateien im .pat format spezifisch (aber nicht wirklich copyrightgeschützt) von The Gimp, die dazu benutzt werden, um eine Oberfläche mit der Hilfe von dem "Farbtopf"Werkzeug zu füllen. Sie werden im Verzeichnis /usr/share/gimp/1.2/patterns/ gespeichert. Alle weiteren erzeugten Muster können an diesem Ort gespeichert werden, was allen anderen Benutzern Zugang verschafft oder in deinem home Vezeichnis in ~/.gimp/patterns, wodurch nur du in der Lage bist, diese Fonts zu benutzen.

Nimm an, daß wir das Bild in Abbildung 5 dazu benutzen wollen, um den Hintergrund eines Bildes zu "tapezieren".



[Figure 5]
Abbildung 5.


Wir könnten dies manuell machen durch Kopieren und Pasten, aber das ist ein bißchen langatmig und nicht sehr genau: die Muster werden zum nächsten Pixel verschoben! Es ist besser, es The Gimp machen zu lassen, und es macht es, wenn die Datei, die wiederholt werden soll im richtigen Format, also z.B.eine .pat Datei ist.
Wenn dies nicht der Fall ist, kannst du es folgendermaßen heilen:

Schließe The Gimp, da das neue Muster erst beim erneuten Start verfügbar ist und starte es erneut.
In der Toolbox klicke auf File>Dialogs>Patterns. Die Musterauswahlbox erscheint und zeigt Samples (Kostproben) aller verfügbaren Muster; wenn man auf ein Sample klickt, dann wird es zeitweise vergrößert. Auch wählt Klicken auf dieses Sample dieses Muster aus.
Finde das Muster Tuxdor, nahe am Ende der Liste, da die Muster alphabetisch gelistet sind, und wähle es zum Benutzen aus.
Erzeuge einen neuen Arbeitsbereich mit File>New>Width 288 Height 286 (Raum für 4 Muster),
doppelklicke auf Fill with a colour or pattern (den Farbtopf) und selektiere Pattern Fill.
Klick irgendwo in das leere Bild und es wird mit einem goldenen Tuxdor gefüllt:



[Figure 6]
Abbildung 6.


Allerdings ist die Füllung nicht sehr ästhetisch ansprechend: die "Nähte" zwischen den Mustern sind sichtbar. Dies kommt durch das Muster selbst, das nicht für solches Kacheln wie dies erschaffen wurde. Laßt uns das Ändern. Öffne erneut die Originalabbildung 5. Rechter Klick auf das Bild, dann
>Filters> Map> Make Seamless, wir bekommen ein neues Bild.



[Figure 7]
Abbildung 7.


Speicher dies am selben Ort als Tux2.pat, mit dem Identifizierer TuxTile. Schließe The Gimp, starte es erneut und erstelle ein neues Bild mit 432x392 Pixeln. Füll dieses neue Bild mit dem TuxTile Muster. Jetzt haben wir ein neues Bild ohne Nähte, das aber ein bißchen militärisch aussieht. Natürlich hat dies seinen Platz, abhängig vom Zielort des Musters. Die Qualität des Bildes ist jedoch viel besser als das Vorherige.



[Figure 8]
Abbildung 8.


Trotzallem könnte man ein weiteres Bild wollen, mehr verschmolzen. Um ein solches Muster zu erstellen::



[Figure 9]
Abbildung 9.




[Figure 10]
Abbildung 10.


Vorläufige Zusammenfassung

Das letzte Bild zeigt, was man mit diesen Zeichenfonts machen kann und den Mustern anders als denen, die bei Gimp mit dabei sind. Der Text wurde durch Benutzen des Script-Fu Logo erzeugt; sicherlich hat es einiges an Arbeit gekostet, um es dazuzukriegen, so auszusehen, aber dasselbe kann jeder erreichen. Es ist ausreichend, die zahlreichen Möglichkeiten, die Software bietet, zu erforschen und sich an ihnen zu erfreuen.