![[Standard and anti-aliased xterm]](../images/xterm_diff.jpg)
Porównanie dwóch przeglądarki Konqueror z czcionkami z aliasingiem i bez:
![[Standard and anti-aliased Konqueror]](../images/konqueror_diff.jpg)
Możesz sprawdzić jak jest w przypadku twojej karty komendą:
Jeśli nie zostanie wypisane "RENDER" na liście rozszerzeń, będziesz musiał poczekać aż ktoś zaimplementuje niezbędne rozszerzenie dla twojej karty.$ /usr/X11R6/bin/xdpyinfo | grep RENDER RENDER
Następnym krokiem jest pobranie i instalacja jakiś fontów TrueType. Zestaw popularnych fontów został skompilowany i jest dostępny w drzewie portów OpenBSD, dokładnie w /usr/ports/x11/msttcorefonts. Możesz jest zainstalować w systemie wykonując:
W tym momencie powinieneś odwołać się do innej sekcji tego dokumentu, aby dowiedzieć się jak zarejestrować fonty w X`ach.# cd /usr/ports/x11/msttcorefonts # make # make install
Opcje te to:$ xterm -fa 'Andale Mono' -fs 14
Alternatywnie, można wykorzystać zasoby X`ów. Są one domyślnie konfigurowane w $HOME/.Xdefaults i kontrolowalne poprzez program xrdb(1).Option Resource Meaning ---------------------------------------- -fa XTerm*faceName Font face name -fs XTerm*faceSize Font size
Niektóre czcionki TrueType (jak np. Arial, Georgia czy Verdana) nie współpracują dobrze z xterm. Dzieje się tak, ponieważ xterm wykorzystuje maksymalną szerokość spośród wszystkich znaków podanej czcionki, aby wyświetlać znaki. W przypadku fontów o stałej szerokości wszystko jest w porządku. W przypadku czcionki o zmiennej szerokości, proporcjonalnej, tak jak wymienione wcześniej przykłady, xterm wyświetla każdy znak rozciągnięty do maksymalnej szerokości, tworząc nieczytelne, duże przestrzenie między znakami.
W graficznym programie konfiguracyjny Qt, qtconfig (lub qtconfig-mt jeśli wielowątkowa wersja Qt została zainstalowana), można skonfigurować tą zmienną poprzez przełącznik Enable Anti-aliased Font Support w zakładce Fonts.useXft=true
Ta komenda uruchamia oparty o GTK+2 komunikator Gaim, dostępny w /usr/ports/net/gaim:
$ env GDK_USE_XFT=1 gaim
Lub jeśli korzystasz z xfs, dodaj kartoteki do /etc/X11/fs/config:Section "Files" FontPath "/usr/X11R6/lib/X11/fonts/TTF/" FontPath "/usr/local/lib/X11/fonts/myfonts/" ... EndSection
Następnie, serwer X`ów musi zostać powiadomiony o czcionce zindeksowanej w tej kartotece, np w piku fonts.dir. Tradycyjnie, wszystkie dostępne wielkości fontów są wylistowane w pliku indeksującym, wygenerowanym przez komendę mkfontdir(1). Niemniej, ponieważ czcionki TrueType mogą być skalowane do dowolnej wielkości, wylistowanie każdej możliwej wielkości nie jest konieczne. Zamiast tego, skalowalne czcionki są wylistowane w pliku fonts.scale i są rozpoznawane przez mkfontdir podczas generowania indeksów fonts.dir.catalogue = /usr/X11R6/lib/X11/fonts/TTF/, /usr/local/lib/X11/fonts/myfonts/
Aby utworzyć plik fonts.scale, można skorzystać z programu mkfontscale(1):
W końcu, aby zaaplikować zmiany w obecnej sesji X`ów, zamiast restartować X`y, można użyć poniższej komendy powodującej ponowne sprawdzenie obecnie zarejestrowanych ścieżek w poszukiwaniu zmian:# cd /usr/local/lib/X11/fonts/myfonts # /usr/X11R6/bin/mkfontscale # /usr/X11R6/bin/mkfontdir
Lub, jeśli została dodana nowa ścieżka:$ xset fp rehash
Jeśli korzystaż z xfs, należy zamiast tego skorzystać z:$ xset +fp /usr/local/lib/X11/fonts/myfonts
# pkill -HUP xfs
Dodaj kartotekę zawierających czcionkę do tego pliku konfiguracyjnego:
Lub, jeśli tylko jeden użytkownik deklaruje chęć dodania danych czcionek do swojej sesji X'ów, powyższa konfiguracja może zostać umieszczona w pliku $HOME/.fonts.conf tego użytkownika.<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "/etc/fonts/fonts.dtd"> <fontconfig> <dir>/usr/local/lib/X11/fonts/myfonts</dir> </fontconfig>
Zwróć uwagę, że fontconfig będzie rekurencyjnie przeglądał wszystkie podkatalogi w poszukiwaniu dostępnych fontów, podczas gdy standardowy serwer X`ów nie będzie tego robił.
Po tym jak dodany zostanie katalog, cache kartotek czcionek musi zostać wygenerowany na nowo. Następująca komenda poinstruuje fontconfig aby ponownie wygenerować cache dla wszystkich kartotek czcionek wylistowanych w swojej konfiguracji:
Zmiany te nie będą mieć miejsca w obecnej sesji X`ów, więc same X`y nie muszą być zrestartowane, niemniej już uruchomione aplikacje tego wymagają.# /usr/X11R6/bin/fc-cache -v