Login
Newsletter
Werbung

Mo, 6. März 2000, 00:00

xfstt - TTF-Schriften unter X11

Obwohl XFree86 seit Version 4.0 über eingebaute TTF-Fähigkeiten verfügt, kann es manchmal zweckmäßig sein, einen separaten Font-Server zu installieren. Dieser Artikel beschreibt die Installation von xfstt.

Von ScouT

Installation des Font-Servers xfstt

Laden Sie die Quellen von xfstt (xfstt-1.0.tar.gz) von der Primärseite (USA) bzw. einem Mirror (Österreich) herunter.

Wer noch keine TTF-Fonts besitzt, kann sich hier 11 Fontpakete mit insgesamt 30 Fontdateien herunterladen. Die Fonts sind aber nur als (unter Windows) selbstextrahierende WinZip-Archive verfügbar.

Entpacken Sie das Archiv mit tar xfz xfstt-1.0.tar.gz.

Kompilieren und installieren des Font-Servers mit make und make install (als root).

Die TTF-Fonts kopieren Sie nach /usr/share/fonts/truetype und machen diese mit xfstt --sync dem System bekannt.

Editieren Sie die Datei XF86Config, diese liegt je nach Distribution entweder in /etc oder in /etc/X11. Im Abschnitt Section "Files" muss der Eintrag FontPath "unix/:7101" hinzugefügt werden. Das sollte in etwa so aussehen:

Section "Files"
RgbPath "/usr/X11R6/lib/X11/rgb"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
FontPath "/usr/X11R6/lib/X11/fonts/Type1"
FontPath "/usr/X11R6/lib/X11/fonts/URW"
FontPath "/usr/X11R6/lib/X11/fonts/Speedo"
FontPath "/usr/X11R6/lib/X11/fonts/misc"
FontPath "/usr/X11R6/lib/X11/fonts/75dpi"
FontPath "/usr/X11R6/lib/X11/fonts/100dpi"
FontPath "/usr/X11R6/lib/modules"
<strong>FontPath "unix/:7101"</strong>
EndSection

Das abgebildete Shell-Script speichern Sie als /etc/rc.d/init.d/xfstt.sh ab und setzen die Zugriffsrechte mit chmod 744 /etc/rc.d/init.d/xfstt.sh. Der Font-Server sollte sich ab sofort mit /etc/rc.d/init.d/xfstt.sh start bzw. /etc/rc.d/init.d/xfstt.sh stop starten bzw. beenden lassen.

Um das Starten/Beenden des Font-Servers zu automatisieren, sollte man noch folgende Links für die verschiedenen Runlevel anlegen:

ln -s /etc/rc.d/init.d/xfstt.sh /etc/rc.d/rc2.d/S20xfstt
ln -s /etc/rc.d/init.d/xfstt.sh /etc/rc.d/rc2.d/K20xfstt
ln -s /etc/rc.d/init.d/xfstt.sh /etc/rc.d/rc3.d/S20xfstt
ln -s /etc/rc.d/init.d/xfstt.sh /etc/rc.d/rc3.d/K20xfstt

Ist bis hierher alles glatt verlaufen, wird ab sofort beim Rechnerstart bzw. Herunterfahren der Font-Server automatisch mit gestartet bzw. beendet.

Zu beachten ist nur, dass beim Hinzufügen bzw. Löschen von TTF-Fonts erneut xfstt --sync aufgerufen werden muss. Der Font-Server sollte hierzu mit (/etc/rc.d/init.d/xfstt.sh stop) beendet sein. Alternativ sollte ein /etc/rc.d/init.d/xfstt.sh restart genügen.

Nun noch im Netscape die Codierung auf "Westlich (iso-8859-1)" gesetzt und die Schriftarten Verdana bzw. Courier New ausgewählt und sogleich mal eine Test-Seite aufgerufen.

Skript für SuSE Linux:

#!/bin/sh
# Script zum Starten und Stoppen des Font-Servers xfstt unter SuSE Linux
#
# Author: ScouT <scout666@iname.com>, 1999
# Thomas Gern <Thomas.Gern@gmx.de>, 2000
#
# /etc/rc.d/init.d/xfstt.sh
#
if [ ! -f /etc/rc.config ]; then
 echo ""
 echo "FEHLER: Falsche Distribution"
 echo " Dieses Script funktioniert nur mit SuSE/Linux korrekt."
 echo " Fuer Red Hat basierende Distributionen gibt es ein"
 echo " gesondertes Script."
 echo ""
 exit 1
fi
if [ ! -f /sbin/startproc ] ||
 [ ! -f /sbin/killproc ] ||
 [ ! -f /sbin/checkproc ]; then
 echo ""
 echo "FEHLER: Konnte eine benoetigte Datei nicht finden."
 echo " Sind Sie sicher dass SuSE/Linux korrekt installiert ist ?"
 echo ""
 echo " benoetigte Dateien:"
 echo " /sbin/startproc"
 echo " /sbin/killproc"
 echo " /sbin/checkproc"
 echo ""
 exit 1
fi
. /etc/rc.config # enthaelt bei SuSE u.a. die Definitionen
 # fuer rc_done und rc_failed
# rc_done="\033[71G\033[32mdone\033[m"
# rc_failed="\033[71G\033[31m\033[1mfailed\033[m"
rc_up="\033[71G\033[32mup\033[m"
rc_down="\033[71G\033[31m\033[1mdown\033[m"
XFSTT=/usr/X11R6/bin/xfstt
PORT=7101
TTDIR=/usr/share/fonts/truetype
test -x $XFSTT || exit 0
return=$rc_done
case "$1" in
 start)
 echo -n "Starting Font Server Xfstt"
 startproc $XFSTT --dir $TTDIR --port $PORT || return=$rc_failed
 echo -e "$return"
 ;;
 stop)
 echo -n "Shutting down Font Server Xfstt"
 killproc $XFSTT || return=$rc_failed
 echo -e "$return"
 ;;
 restart)
 $0 stop
 $XFSTT --dir $TTDIR --sync
 $0 start
 ;;
 status)
 return=$rc_up
 echo -n "Checking Status for Font Server Xfstt"
 checkproc $XFSTT || return=$rc_down
 echo -e "$return"
 ;;
 status_ps)
 echo "USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND"
 ps aux | grep $XFSTT | grep -v grep
 ;;
 *)
 echo "Usage: $0 {start|stop|restart|status|status_ps}"
 exit 1
 ;;
esac
test "$return" = "$rc_done" || exit 1
exit 0

Skript für Red Hat Linux und für auf Red Hat basierenden Linux-Distributionen, wie z.B. PC Magazin Linux:

#!/bin/sh
# Script zum Starten und Stoppen des Font-Servers xfstt unter Red Hat Linux
#
# Author: ScouT <scout666@iname.com>, 1999
# Thomas Gern <Thomas.Gern@gmx.de>, 2000
#
# /etc/rc.d/init.d/xfstt.sh
#
if [ ! -f /etc/rc.d/init.d/functions ]; then
 echo ""
 echo "FEHLER: Falsche Distribution"
 echo " Dieses Script funktioniert nur mit Red Hat basierenden"
 echo " Distributionen korrekt."
 echo " Fuer SuSE/Linux gibt es ein gesondertes Script."
 echo ""
 exit 1
fi
. /etc/rc.d/init.d/functions # enthaelt bei Red Hat u.a. die Definitionen
 # fuer daemon und killproc
XFSTT=/usr/X11R6/bin/xfstt
PORT=7101
TTDIR=/usr/share/fonts/truetype
test -x $XFSTT || exit 0
case "$1" in
 start)
 echo -n "Starting Font Server Xfstt"
 daemon $XFSTT --dir $TTDIR --port $PORT
 echo
 ;;
 stop)
 echo -n "Shutting down Font Server Xfstt"
 killproc $XFSTT
 echo
 ;;
 restart)
 $0 stop
 $XFSTT --dir $TTDIR --sync
 $0 start
 ;;
 status_ps)
 echo "USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND"
 ps aux | grep $XFSTT | grep -v grep
 ;;
 *)
 echo "Usage: $0 {start|stop|restart|status_ps}"
 exit 1
 ;;
esac
exit 0

Dieser Artikel wurde erfolgreich getestet mit der Version 1.0 von xfstt.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung