background image

kwiecień 2004

42

dla początkujących

Fonty w Linuksie

Piotr Machej

U

żytkownikom  systemu  Windows,  którzy 
zaczęli  korzystać  z  Linuksa,  czcionki  potra-
fią  sprawić  wiele  kłopotu.  Prawdę  mówiąc, 
to nawet doświadczeni użytkownicy systemu 

spod znaku pingwina miewają z nimi problemy. Dzieje się 
tak, gdyż Linux wykorzystuje kilka różnych metod obsługi-
wania czcionek. Może więc zdarzyć się, że fonty, z których 
korzystamy  w  jednej  aplikacji,  nie  są  widoczne  w  innej. 
Na  szczęście  obecnie  sytuacja  i  tak  jest  znacznie  lepsza 
niż  choćby  rok  czy  dwa  lata  temu.  Teraz  uzyskanie  ład-
nych, wygładzonych czcionek jest prostsze i wymaga mniej 
wysiłku.

Mam nadzieję, że niniejszy artykuł poprowadzi Czytel-

ników  krok  po  kroku  przez  krainę  różnorodnych  fontów 
i  ułatwi  stworzenie  sobie  przyjemniejszego  środowiska 
pracy.

Przykład użycia

Tego  dnia  znajomy  od  samego  rana  marudził  mi  na  Jab-
berze
, że nie może sobie dobrać takich czcionek w emu-
latorze  terminala,  aby  mu  się  podobały.  Po  kilku  godzi-
nach  przeglądania  różnych  serwisów  w  końcu  stwierdzi-
łem, że przecież też mogę sobie trochę pozmieniać fonty 
wykorzystywane w systemie. Od kilku już lat wykorzysty-
wałem  praktycznie  tylko  te  standardowo  zainstalowane. 
Ponieważ znajomy zaczął też marudzić, że w Mozilli strony 
gorzej wyglądają niż w IE, podpowiedziałem mu, jak ma 
sobie  zainstalować  czcionki  z  Windows,  a  sam  zacząłem 
przeglądać serwisy z fontami TrueType. W końcu znalazłem 
w miarę ładną, odręczną czcionkę oraz kilka innych, wzo-
rowanych  na  pismo  maszynowe.  Ściągnąłem  je  na  dysk, 
a następnie dodałem do systemu. Później tylko kilka kliknięć 
GNOME i... zaśmiałem się, widząc wszystkie teksty pisane 
odręcznym pismem. Na dłuższą metę czytanie tego byłoby 
jednak męczące, więc wróciłem do szukania bardziej pasu-
jącej mi czcionki.

Podstawowe informacje

Jak  wspomniałem  we  wstępie,  w  Linuksie  istnieje  kilka 
metod obsługi czcionek. Dokładniej rzecz biorąc, jest to 
kilka  niezależnych  podsystemów.  O  ile  w  konsoli  nie 
sprawia  to  jeszcze  kłopotów,  o  tyle  w  środowisku  gra-
ficznym może wywołać dezorientację. Postaram się więc 
poniżej  krótko  omówić  każdy  z  podsystemów  obsłu-
gi  fontów.  Najpierw  jednak  zapoznajmy  się  z  rodzajami 
czcionek.

Czcionki bitmapowe

Wyobraźmy sobie, że mamy kartkę papieru w kratkę. Nary-
sujmy  na  nim  prostokąt  o  szerokości  8  i  wysokości  16 
kratek. Teraz w tym prostokącie zamalujmy wybrane przez 
nas kratki (całe, nie tylko fragmenty) tak, aby uzyskać obraz 
jakiejś litery, np. a.

W  ten  właśnie  sposób  tworzone  są  fonty  bitmapowe. 

Każda  nasza  kratka  odpowiada  jednemu  pikselowi.  Gdy 
jakiś program chce wyświetlić literę, po prostu zabarwia-
ne są odpowiednie piksele ekranu. Generalnie fontów bit-
mapowych nie skaluje się (można to robić, ale efekty nie 
są zbyt ładne) – mają z góry określony rozmiar. Wiąże się 
z tym pewien problem. Mianowicie ten sam font wyświetlo-
ny na ekranie w rozdzielczości 640x400 może być świetnie 
widoczny, natomiast na ekranie w rozdzielczości 1280x1024 
trudno go będzie odczytać.

O autorze:

Autor zakończył studia zaoczne na V roku Informatyki na Poli-
technice Opolskiej. Z Linuksem (i ogólnie systemami unikso-
wymi) ma styczność od wielu lat. Obecnie administruje siecią 
blokową złożoną z dziesięciu komputerów. Kontakt z autorem: 
autorzy@linux.com.pl.

Rysunek 1. 

GNOME z tekstami pisanymi odręcznie wygląda 

może i ciekawie, ale do dłuższej pracy przydałby się bardziej 
czytelny font

Zobacz w:

background image

43

www.linux.com.pl

fonty w Linuksie

Fonty  bitmapowe  świetnie  sprawdzają  się  w  kon-

soli  tekstowej,  ale  w  trybie  graficznym  też  się  przydają 
(np. w oknach emulatorów terminali).

Najbardziej  popularne  formaty  czcionek  bitmapowych 

to  PCF  (Portable  Compiled  Format)  oraz  BDF  (Bitmap 
Distribution Format
).

Czcionki wektorowe

Ze  względu  na  to,  że  czcionki  bitmapowe  wyglądają  źle 
przy skalowaniu do większych rozmiarów, a projektowanie 
i używanie takich czcionek w dużych wymiarach jest raczej 
mało wygodne i efektywne, stworzono czcionki wektoro-
we. Idea czcionek wektorowych (zwanych również skalo-
walnymi) polega na tym, że nie są one budowane z pikseli, 
a opisywane za pomocą wektorów.

Znany jest kształt litery oraz wzajemne zależności roz-

miarów (np. stosunek wysokości do szerokości), ale sama 
czcionka jest generowana w momencie, w którym poprosi-
my o znak w określonym rozmiarze.

Jak  widać,  czcionki  takie  pochłaniają  znacznie 

więcej mocy obliczeniowej komputera niż zwykłe fonty 
bitmapowe.  Z  tego  powodu  na  starszych  komputerach 
ich użycie było bardzo ograniczone. Przy mocy współ-
czesnych komputerów nie ma to jednak większego zna-
czenia.

Obecnie  najpopularniejsze  formaty  fontów  skalowal-

nych to Type1 oraz TrueType.

Fonty podstawowe XFree86

Pierwszą metodą udostępniania fontów w środowisku gra-
ficznym  jest  wykorzystanie  wbudowanych  funkcji  serwe-
ra X-ów. Informacja o tym, w których katalogach umiesz-
czone są fonty, zawarta jest w pliku /etc/X11/XF86Config
W samych katalogach z fontami powinny znaleźć się dodat-
kowo pliki specjalne – fonts.scale i fonts.dir. Odpowiadają 
one za indeksowanie informacji o czcionkach umieszczo-
nych w katalogu.

Oprócz  tych  dwóch  plików  można  również  stosować 

plik fonts.alias (definiuje aliasy fontów) oraz encodings.dir.

Serwer fontów

Fonty  podstawowe  mogą  być  również  udostępniane  za 
pośrednictwem serwera fontów (ang. fontserver). Program 
ten  oczekuje  na  zapytania  od  serwera  X-ów,  a  gdy  takie 
otrzyma, wysyła odpowiedni font.

Głównym plikiem konfiguracyjnym serwera fontów jest 

/etc/X11/fs/config.  W  nim  właśnie  umieszczone  są  nazwy 
katalogów, w których znajdują się fonty. Wymagania co do 
plików  specjalnych  w  tych  katalogach  są  takie  same,  jak 
opisane w poprzednim podrozdziale.

Xft2 i fontconfig

Obecnie w XFree86 mamy do dyspozycji bardzo przyjemną 
bibliotekę  Xft2.  Zastąpiła  ona  swoją  poprzedniczkę  (Xft1
i obecnie stała się już niemal standardem. Biblioteka ta zaj-
muje się renderowaniem i wygładzaniem fontów. Z punktu 

widzenia użytkownika istotną informacją jest, że korzysta 
z innego źródła czcionek niż podstawowe fonty wskazywa-
ne przez serwer X-ów (opisane w dwóch poprzednich pod-
rozdziałach).

W przypadku Xft2 za wyszukiwanie czcionek odpo-

wiada pakiet fontconfig. Jego głównym plikiem konfigu-
racyjnym  jest  /etc/fonts/fonts.conf.  Wymienione  w  nim 
katalogi  nie  muszą  zawierać  dodatkowych  plików  spe-
cjalnych, ale pliki takie nie przeszkadzają. Jest więc moż-
liwe  współdzielenie  katalogów  z  fontami  poprzez  font-
config
  i  serwer  fontów  czy  bezpośrednio  przez  serwer 
X-ów. Fontconfig generuje ponadto pliki cache w katalo-
gach  z  czcionkami  w  celu  przyspieszenia  odczytywania 
informacji o nich.

Fonty w X-ach

Gdy  mówimy  o  dodawaniu  czcionek  do  Linuksa
zwykle mamy na myśli czcionki TrueType. Jeśli chcemy 
mieć możliwość czytania witryn WWW w takiej formie, 
w  jakiej  stworzył  je  autor,  na  pewno  przydadzą  się 
czcionki  wykorzystywane  w  Windows.  Możemy  rów-
nież  chcieć  urozmaicić  interfejs  naszego  środowiska 
graficznego  czy  niektórych  programów,  dodając  bar-
dziej fantazyjne albo po prostu przyjemniejsze dla oka 
czcionki.

Obecnie w Internecie jest wiele witryn oferujących bez-

płatne czcionki do użytku domowego. Niektóre z nich ofe-

background image

kwiecień 2004

44

dla początkujących

rują  nawet  czcionki  z  polskimi  znakami  diakrytycznymi, 
więc każdy może znaleźć coś dla siebie. Niektóre z witryn 
udostępniających czcionki wymienione są w ramce W Sieci
ale zachęcam do własnych poszukiwań – takich serwisów 
jest o wiele więcej.

Instalując czcionki warto pamiętać o tym, że nie ma 

sensu instalować ich bardzo dużej ilości. Zainstalowanie 
biblioteki 10000 czcionek mija się z celem, jeśli będzie-
my  wykorzystywać  tylko  5,  może  10  z  nich.  Instalujmy 
więc tylko te fonty, które rzeczywiście są nam potrzebne 
– dzięki temu nie będziemy niepotrzebnie obciążać syste-
mu i wprowadzać bałaganu.

Umieszczamy fonty w katalogu

Załóżmy, że nasze nowe czcionki, które chcemy dodać do 
systemu, znajdują się w katalogu /home/uzytkownik/nowe-
fonty/
 (nazwa uzytkownik odpowiada naszej nazwie użyt-
kownika  w  systemie).  Mogą  to  być  zarówno  czcionki 
pobrane z jednej z witryn WWW, jak również te skopiowa-
ne z katalogu systemu Windows.

Dla  przykładu  pobierzmy  fonty  Szarpany  i  SecesjaPL

dzięki  którym  możemy  później  uzyskać  taki  wygląd  pul-
pitu, jak zaprezentowany na Rysunku 1. Czcionki te znaj-
dziemy  w  serwisie  http://www.digit.pl/czcionki/  w  menu 
Czcionki-->alfabetycznie-->S.  Możemy  je  pobrać  je 
wciskając  znaczek  Microsoftu  umieszczony  pod  nazwą 
fontu.  Po  zapisaniu  ich  w  katalogu  ~/nowe-fonty/  powin-
niśmy je rozpakować (dostarczane są w wersji spakowanej) 
poleceniami

 

unzip  secesja.zip

 oraz 

unzip  szarpany.zip. 

Jeśli spodobają nam się jeszcze jakieś inne fonty w tym ser-
wisie, możemy je również zapisać w naszym katalogu.

Właściwą instalację czcionek w systemie zaczynamy od 

uzyskania  uprawnień  superużytkownika  (czyli  wykonuje-
my polecenie 

su -

 lub logujemy się na konto root). W celu 

utrzymania porządku warto nowe czcionki umieścić w tym 
samym miejscu, gdzie już są zainstalowane stare. Zwykle 
część fontów zainstalowana jest w podkatalogach katalogu 
/usr/share/fonts/ i tam właśnie umieścimy nasze.

Tworzymy nowy katalog poleceniem:

mkdir /usr/share/fonts/nowe-fonty/

Następnie kopiujemy pliki z fontami do tego katalogu:

cp /home/uzytkownik/nowe-fonty/* /usr/share/fonts/nowe-

fonty/

Tworzymy pliki specjalne

Po  przejściu  do  nowego  katalogu  (

cd  /usr/share/fonts/

nowe-fonty/

)  musimy  jeszcze  stworzyć  wszystkie  pliki 

indeksów. Zaczynamy od stworzenia pliku fonts.scale:

mkfontscale

Dzięki temu uzyskujemy plik zawierający informacje o fon-
tach skalowalnych (np. TrueType i Type1). Plik ten obecnie 

nie jest już bezpośrednio wykorzystywany – jest potrzebny 
tylko do wygenerowania poprawnego pliku fonts.dir, które-
go tworzymy następującym poleceniem:

mkfontdir

Powoduje  ono  przeskanowanie  fontów  bitmapowych 
w bieżącym katalogu i zapisanie informacji o nich do pliku 
fonts.dir.  Oprócz  tego,  do  pliku  fonts.dir  dołączana  jest 
zawartość  pliku  fonts.scale,  gdyż  polecenie 

mkfontdir

  nie 

radzi sobie samo z czcionkami skalowalnymi.

Modyfikujemy pliki konfiguracyjne

Pozostaje  nam  wskazanie  systemowi,  gdzie  ma  szukać 
nowych czcionek. W tym celu sprawdzamy plik /etc/X11/
XF86Config
. Interesuje nas wpis znajdujący się pomiędzy 
liniami 

Section  „Files”

 i następującą po niej 

EndSection

Jeśli znajduje się tam szereg linii zaczynających się słowem 

FontPath

,  zawierających  ścieżki  dostępu  do  katalogów, 

to  zmiany  będziemy  wprowadzać  właśnie  w  tym  pliku. 
Jedyną zmianą, którą musimy tu wprowadzić, jest dodanie 
jeszcze jednej linii o treści:

FontPath „/usr/share/fonts/nowe-fonty/”

Po  modyfikacji  pliku  /etc/X11/XF86Config  należy  zrestar-
tować X-y.

Możliwe jednak, że w pliku /etc/X11/XF86Config mamy 

wpis podobny do poniższego:

FontPath „unix/:7100”

Jeśli  tak,  to  znaczy,  że  X  Window  wykorzystuje  serwer 
fontów (ang. fontserver). W takim przypadku zmian będzie-
my dokonywać w pliku /etc/X11/fs/config. Szukamy w nim 
linii zaczynającej się od słowa 

catalogue

, po którym wypi-

sane są katalogi zawierające czcionki. Dopisujemy tam nasz 
katalog,  czyli  /usr/share/fonts/nowe-fonty,  pamiętając,  że 
kolejne katalogi rozdzielone są przecinkami, a po ostatnim 

Rysunek 2. 

Tutaj trudno coś doradzić – jedni lubią wygładzone 

czcionki, dla innych są zbyt rozmyte

background image

45

www.linux.com.pl

fonty w Linuksie

przecinka nie ma. Po zakończeniu edycji powinniśmy zre-
startować serwer fontów poleceniem 

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

restart

 (w Auroksie) lub 

kill -HUP `pidof xfs`

 (w dowol-

nej dystrybucji).

Jeśli  w  naszym  systemie  mamy  zainstalowany  pro-

gram  chkfontpath,  to  nasz  katalog  możemy  dodać  do 
pliku  /etc/X11/fs/config  poleceniem 

chkfontpath  --add 

/usr/share/fonts/nowe-fonty

.  Polecenie  to  samo  dba 

o zrestartowanie serwera fontów, więc nie musimy tego 
robić ręcznie.

Ostatnim  plikiem,  który  powinniśmy  zmodyfiko-

wać, jest plik /etc/fonts/fonts.conf. Plik ten jest dosyć długi 
i może wydawać się skomplikowany (dokumentacja zawar-
ta w 

man fontconfig

 potrafi zniechęcić do czytania samymi 

swoimi rozmiarami). Na szczęście, w większości przypad-
ków jedyne, co musimy zrobić, to dopisać katalog do sze-
regu  innych,  zawartych  pomiędzy  znacznikami  <dir> 
</dir>

Warto zauważyć, że jeśli jest tam zawarta ścieżka /usr/

share/fonts  (a  domyślnie  tak  właśnie  jest),  to  nie  musimy 
dopisywać naszego katalogu, gdyż w poszukiwaniu czcio-
nek  skanowane  są  wskazane  katalogi  i  ich  podkatalogi. 
Dopóki więc będziemy umieszczać nasze czcionki w pod-
katalogach katalogu /usr/share/fonts/, to nie będzie koniecz-
ności zmiany tego pliku.

Jedyne, co powinniśmy zrobić (niezależnie od tego, czy 

edytowaliśmy  plik  /etc/fonts/fonts.conf,  czy  nie),  to  wyda-
nie polecenia 

fc-cache

. Powoduje ono utworzenie plików 

cache  (np.  o  nazwie  fonts.cache-1),  przyspieszających 
odczytywanie informacji o czcionkach.

Porządkowanie czcionek

Modyfikując pliki konfiguracyjne nie przejmowaliśmy się, 
gdzie  dokładnie  umieszczamy  ścieżkę  do  naszego  kata-
log  z  czcionkami.  Tymczasem,  jeśli  chcemy  na  ekranie 
uzyskać właściwe fonty, musimy zwrócić uwagę na kilka 
spraw.

Kolejność  wpisów 

FontPath

  w  pliku  konfiguracyjnym 

ma znaczenie. Gdy jakiś program zgłosi zapotrzebowanie 
na określoną czcionkę, jest ona wyszukiwana w poszcze-
gólnych  katalogach  według  kolejności.  Jeśli  zostanie  zna-
leziona,  następne  katalogi  nie  są  już  przeszukiwane.  Jest 
to szczególnie istotne, gdy w naszych katalogach niektóre 
czcionki powtarzają się. Warto więc wpisy dotyczące kata-
logów z fontami, na których nam najbardziej zależy, umie-
ścić na początku listy, a nie na końcu. Oczywiście, te same 
uwagi  stosują  się  do  wykorzystania  serwera  fontów,  czyli 
kolejności  katalogów  umieszczonych  po  słowie  catalogue 
w pliku /etc/X11/fs/config

Bardziej  doświadczeni  użytkownicy  mogą  zdecydo-

wać  się  na  usunięcie  wpisów  katalogów  z  czcionkami, 
których  nie  wykorzystują.  Oprócz  tego,  można  wyciąć 
część wpisów w plikach fonts.dir, dotyczących niewyko-
rzystywanych kodowań. Jeśli nie chcemy usuwać żadnych 
informacji  z  tych  plików,  możemy  najbardziej  potrzeb-
ne  nam  wpisy  przesunąć  po  prostu  na  początek  pliku 
– wpisy w plikach fonts.dir są rozpatrywane po kolei aż 
do napotkania pierwszej czcionki pasującej do kryteriów 
wyszukiwania.

Druga  sprawa  jest  związana  z  rozmieszczeniem 

czcionek  w  katalogach.  Ze  względu  na  utrzymanie 
porządku,  jak  również  na  wygodę,  warto  rozdzie-
lić  je  tematycznie  –  szczególnie  w  przypadku  więk-
szych  ilości  plików.  Co  więcej,  powinniśmy  trzymać 
w osobnych katalogach czcionki bitmapowe i skalowal-
ne.  Uważni  Czytelnicy  pewnie  zwrócili  uwagę,  że  do 
niektórych wpisów FontPath dodane jest słowo :unsca-
led
, np. w takiej linii:

FontPath „/usr/share/fonts/ISO8859-2/misc:unscaled”

lub w przypadku pliku /etc/X11/fs/config:

/usr/X11R6/lib/X11/fonts/misc:unscaled,

Słowo to można dodać do nazw katalogów zawierających 
fonty bitmapowe. Powstrzymuje to system od prób skalo-
wania tych fontów w przypadku, gdy jakiś program będzie 
się  domagał  fontu  w  nietypowym  rozmiarze.  Ponieważ 
zwykle wynik takiego skalowania nie jest zbyt zadowala-
jący, lepiej po prostu dodać to słowo. Oczywiście nie doty-
czy to katalogów z czcionkami skalowalnymi (np. TrueType
– czcionki te są z założenia generowane w takim rozmiarze, 
o jaki poprosi program.

Rozmiary czcionek

Ostatnia sprawa dotyczy rozmiaru czcionek. Zdarza się, że 
po zmianie monitora (np. w miejsce monitora 15” kupujemy 
monitor 19”) czcionki okazują się mniejsze lub większe. Jest 
to niewłaściwe zachowanie.

Rozmiary fontów określane są w punktach (ang. point). 

Jeden  punkt  ma  rozmiar  dokładnie  1/72  cala.  Tak  więc, 
niezależnie  od  monitora,  czcionka  o  tym  samym  rozmia-

Rysunek 3. 

Jeśli strona jest dobrze zaprojektowana, to 

ustawienie dużego minimalnego rozmiaru czcionki nie powinno 
jej zaszkodzić

background image

kwiecień 2004

46

dla początkujących

rze powinna mieć taką samą wysokość i szerokość. Skąd 
jednak  system  ma  wiedzieć,  jakie  jest  przeliczenie  pikse-
li na cale?

W nowszych monitorach istnieje możliwość sprawdze-

nia rozmiaru obszaru widzialnego i wówczas system takie 
informacje  pobiera  sobie  sam.  Nie  zawsze  jednak  robi  to 
poprawnie, poza tym możemy posiadać monitor nie wypo-
sażony  w  taką  opcję.  Wygodniej  będzie  własnoręcznie 
zmierzyć rozmiar obszaru widzialnego i wpisać go w odpo-
wiednie miejsce. Tak właśnie zrobimy.

Bierzemy  linijkę,  a  następnie  mierzymy  szerokość 

i  wysokość  obrazu  wyświetlanego  na  monitorze.  Zazna-
czam,  że  chodzi  o  rozmiary  obrazu,  a  nie  monitora  czy 
kineskopu. Następnie edytujemy plik /etc/X11/XF86Config 
i w sekcji pomiędzy liniami 

Section „Monitor”

 a następują-

cą po niej 

EndSection

, dopisujemy linię:

DisplaySize szer_mm wys_mm

Oczywiście zamiast szer_mm i wys_mm wpisujemy odpo-
wiednio  szerokość  i  wysokość  wyświetlanego  obrazu 
wyrażoną w milimetrach. Następnie pozostaje zrestartować 
X Window.

Wygładzone czcionki w GNOME

Ustawienia czcionek w GNOME znajdują się w menu Prefe-
rencje-->Czcionki
. Można tam określić, jakie czcionki mają 
być używane w tytułach okien, paskach menu, na biurku 
czy  w  terminalu.  Oprócz  tego,  możemy  wskazać  metodę 
renderowania czcionek.

Tutaj  wszystko  zależy  od  naszego  gustu  i  potrzeb. 

Mamy cztery standardowe możliwości renderowania, a jeśli 
nas  to  nie  zadowala,  możemy  wcisnąć  przycisk  Szczegó-
ły
.  Uzyskujemy  wtedy  możliwość  określenia  rozdzielczo-
ści, wygładzania, hintingu, a nawet kolejności składowych 
pikseli. Wprowadzane zmiany są od razu widoczne, więc 
możemy  poeksperymentować  i  dobrać  takie  ustawienia, 
jakie nam odpowiadają.

Jeśli  chcemy  uzyskać  efekt  podobny  do  przedsta-

wionego  na  Rysunku  1,  to  przyszła  pora  na  wykorzysta-
nie  pobranych  przez  nas  dwóch  fontów  –  Secesji  i  Szar-
panego
.  We  wspomnianym  menu  Preferencje-->Czcionki 
w polu Czcionka używana przez aplikacje wybieramy font 
Szarpany. Ponieważ w rozmiarze 10 mógłby być mało czy-
telny,  zwiększamy  go  do  rozmiaru  14.  Natomiast  w  polu 
Czcionka używana przez biurko wybieramy Secesję, rów-
nież  powiększoną  do  rozmiaru  14.  Jeśli  teraz  uruchomi-
my  przykładowo  Mozillę,  OpenOffice.org  czy  inny  pro-
gram  wykorzystujący  Xft2,  to  w  menu  powinniśmy  mieć 
już  teksty  pisane  odręczną  czcionką  Szarpany,  natomiast 
na  pulpicie  teksty  pod  ikonami  mamy  pisane  zawijanym 
fontem Secesja.

Jeśli chodzi o czcionkę użytą w menu na Rysunkach 3 

i 5, to jest to Comic Sans MS wybrany w polu Czcionka uży-
wana przez aplikacje
.

Czcionki w Mozilli

Mozilla  jest  chyba  najczęściej  wykorzystywaną  przez 
użytkowników Linuksa przeglądarką stron WWW. Obec-
nie wykorzystuje już Xft2, więc jeśli dodaliśmy fonty do 
katalogu  wymienionego  w  pliku  /etc/fonts/fonts.conf,  to 
będą  one  widoczne  w  Mozilli.  Dotyczy  to  oczywiście 
również  czcionek  TrueType,  których  dodawanie  wiąza-
ło  się  dawniej  z  koniecznością  modyfikacji  pliku  konfi-
guracyjnego defaults/pref/unix.js, umieszczonego w kata-
logu Mozilli.

Bardzo małe czcionki

Zdarza się, że na niektórych witrynach WWW czcionki są 
tak małe, że czytanie ich sprawia trudność. Mozilla pozwa-
la nam na ustawienie minimalnej wielkości czcionki, dzięki 
czemu nie musimy każdorazowo korzystać z powiększania 
klawiszami [Ctrl]-[+].

W  menu  Edycja-->Preferencje-->Widok-->Czcionki 

w  polu  Minimalny  rozmiar  czcionki  ustalamy  pasującą 
nam liczbę. Warto pamiętać, że taka ingerencja może nieco 
zaburzyć wygląd niektórych witryn (tekst będzie wychodził 
poza  przeznaczone  dla  niego  granice),  jednak  generalnie 
opcja ta jest bardzo przydatna.

Jeśli  mamy  już  zainstalowane  w  systemie  czcionki 

z  Windows,  warto  zaznaczyć  opcję  Zezwalaj  na  użycie 
czcionek  zadeklarowanych  w  wyświetlanych  dokumen-
tach
. Wówczas na stronach będą użyte takie fonty, jakie 
chciał  pokazać  autor  (oczywiście,  o  ile  są  zainstalowa-
ne).

Czcionki w OpenOffice.org

Obecnie OpenOffice.org bez problemu korzysta z czcionek 
zainstalowanych  w  systemie.  więc  jeśli  chcemy  zainstalo-
wać nowe czcionki, możemy skorzystać z instrukcji zawar-
tych w rozdziale Fonty w X-ach.

Oprócz  tego,  możemy  zainstalować  czcionki  tak,  że 

będą  widoczne  tylko  w  pakiecie  OpenOffice.org.  Nie 
potrzebujemy  w  tym  celu  nawet  uprawnień  superużyt-

Rysunek 4. 

Może to dziwne, ale w OpenOffice czcionki 

dodajemy w module Zarządzanie drukarką

background image

47

www.linux.com.pl

fonty w Linuksie

kownika  (root),  gdyż  czcionki  mogą  być  przechowywane 
w naszym katalogu domowym.

Instalacja własnych czcionek

Zaczynamy od uruchomienia programu Zarządzanie dru-
karką OpenOffice.org
, dostępnego w menu Biuro-->Konfi-
guracja drukarek OpenOffice.org
. Można go również uru-
chomić  w  emulatorze  terminala  tekstowego  (np.  Multi 
GNOME  Terminal
)  poleceniem 

oopadmin

.  W  otwartym 

okienku (pokazanym w lewym górnym rogu Rysunku 4) 
wciskamy przycisk Czcionki.

Pojawi się nam kolejne okno ze spisem czcionek zain-

stalowanych w pakiecie OpenOffice.org (w prawym górnym 
rogu Rysunku 4). Teraz wciskamy przycisk Dodaj, a następ-
nie musimy wskazać katalog źródłowy czcionek. W oknie 
Dodaj  czcionki  (prawy  dolny  róg  Rysunku  4)  wciska-
my  przycisk  oznaczony  trzema  kropkami  (...),  umieszczo-
ny obok pola Katalog źródłowy. W ostatnim już oknie (Wy-
bierz  ścieżkę
,  pokazanym  w  lewym  dolnym  rogu  Rysun-
ku  4)  przechodzimy  do  katalogu  zawierającego  czcionki 
przeznaczone do zainstalowania, po czym wciskamy przy-
cisk Wybierz. Jeśli chcemy zainstalować czcionki wykorzy-
stywane w Windows (gdy mamy ten system zainstalowa-
ny  na  dysku),  to  powinniśmy  wskazać  podkatalog  Fonts 
katalogu, w którym zainstalowany jest Windows. Przykła-
dowo w moim systemie jest to katalog /mnt/win98pl/dosd/
windows/Fonts/
.

Teraz  możemy  wybrać,  które  czcionki  z  umiesz-

czonych  w  katalogu  chcemy  zainstalować.  Zaznacza-
nia  możemy  dokonywać  myszką  –  lewym  przyciskiem 
dodajemy  kolejne  pozycje  do  zaznaczenia  lub  usuwamy 
je. Możemy też wcisnąć przycisk Zaznacz wszystko, jeśli 
chcemy zainstalować wszystkie umieszczone we wskaza-
nym katalogu czcionki. Po wciśnięciu OK czcionki zostaną 
przekopiowane do katalogu z fontami (~/.openoffice/user/
fonts/ 
),  a  następnie  otrzymamy  komunikat  o  treści 
Dodano 8 nowych czcionek

Oczywiście liczba dodanych czcionek zależy od tego, 

ile ich zaznaczyliśmy. Po dodaniu czcionek możemy opu-
ścić  okno  Czcionki  wciskając  przycisk  Zamknij.  W  ten 
sam sposób opuszczamy główne okno Zarządzanie dru-
karką
.

Dostępne  w  oknie  Dodaj  czcionki  pole  Utwórz  tylko 

łącza sprawia, że czcionki nie są fizycznie kopiowane do 
katalogu z fontami, a jedynie są tworzone dowiązania sym-
boliczne. Korzystając z tej możliwości należy pamiętać, że 
nie wolno jej używać w przypadku instalowania czcionek 
z katalogów, które nie zawsze są dostępne (np. podmonto-
wana płyta CD-ROM).

Po uruchomieniu OpenOffice.org będziemy mieli już do 

dyspozycji nasze nowe czcionki.

Jeśli  chcemy,  aby  nowe  czcionki  były  dostępne  dla 

wszystkich  użytkowników  OpenOffice.org,  powinniśmy 
powyższe  czynności  wykonać  z  uprawnieniami  użyt-
kownika  root.  Zamiast  polecenia  oopadmin  uruchamia-
my bezpośrednio polecenie 

/usr/lib/openoffice/spadmin 

(jeśli  instalowaliśmy  OpenOffice.org  w  innym  katalogu, 
to należy odpowiednio dostosować ścieżkę). Po instalacji 
czcionki  znajdą  się  w  katalogu  /usr/lib/openoffice/share/
fonts/truetype/
.

Zamiana czcionek

Niektórzy  użytkownicy  OpenOffice.org  uskarżają  się  na 
brak polskich czcionek w menu. Może się również zda-
rzyć,  że  czcionki  te  będą  dziwnie  „rozstrzelone”.  Dzieje 
się  tak,  gdyż  menu  pakietu  OpenOffice.org  standardo-
wo wykorzystuje czcionkę Andale Sans UI. W celu napra-
wienia  tego  problemu,  możemy  wykorzystać  dostępne 
w  OpenOffice.org  narzędzie  służące  do  zamiany  czcio-
nek.

Wskazujemy w menu pozycję Narzędzia-->Opcje-->Za-

miana  czcionek.  W  otwartym  oknie  powinniśmy  mieć 
zaznaczoną  opcję  Zastosuj  tabelę  zamian.  Następnie  w 
polu Czcionka wpisujemy 

Andale Sans UI

, a w polu Zamień 

na wskazujemy czcionkę z poprawnymi polskimi znakami. 
Może to być na przykład Luxi Sans. Zatwierdzamy wciska-
jąc zielony przycisk Zastosuj. Teraz zaznaczamy jeszcze pola 
Zawsze i Ekran w linii dotyczącej naszej zamiany, po czym 
możemy wcisnąć OK.

Funkcja  zamiany  czcionek  może  nam  się  przydać  za 

każdym  razem,  gdy  otrzymany  dokument  wykorzystuje 
czcionki, których nie mamy w systemie. Wtedy wystarczy 
według powyższych instrukcji zamienić brakującą czcion-
kę na inną, aby móc swobodnie czytać i pracować z doku-
mentem.

Zamianę  możemy  usunąć  wskazując  konkretną  linię 

zamiany i wciskając czerwony przycisk Usuń. Możemy rów-
nież zmienić czcionkę docelową i wcisnąć zielony przycisk 
Zastosuj.

Wygładzone czcionki

W  większości  przypadków  znacznie  wygodniej  i  przy-
jemniej  czyta  się  czcionki  wygładzone,  a  nie  kanciaste. 
Oczywiście  zależy  to  od  osobistych  preferencji.  W  Open

Rysunek 5. 

Wiele czcionek bez wygładzania po prostu nie da 

się czytać

background image

kwiecień 2004

48

dla początkujących

Office.org  możemy  włączyć  lub  wyłączyć  wygładza-
nie  czcionek  widocznych  na  ekranie  w  menu  Narzędzia
-->Opcje-->Widok
.  Zaznaczając  opcję  Wygładź  czcionki 
widoczne na ekranie
 możemy też wskazać, od jakiego roz-
miaru czcionki mają być wygładzane.

Gdy nie pojawia się polska litera

Zdarza  się,  że  podczas  pisania  tekstu  chcemy  uzyskać 
wielką polską literę, np. Ś. Przytrzymujemy klawisz [Shift], 
później [Alt], wreszcie wciskamy klawisz [] i... nic. Wciska-
my [] jeszcze raz i dopiero wtedy pojawia nam się na ekra-
nie litera Ś.

Jeśli chcemy, aby litera pojawiała się od razu przy pierw-

szym naciśnięciu, to musimy odwrócić kolejność wciskania 
klawiszy, czyli zaczynamy od przytrzymania [Alt], później 
[Shift] i dopiero wciskamy literę (np. nasze nieszczęsne []). 
I co? Voila! Teraz litera pojawiła się od razu.

Oczywiście jeśli piszemy samymi wielkimi literami, to 

wygodniej  jest  skorzystać  z  klawisza  [Caps  Lock],  dzięki 
czemu nie będziemy musieli się martwić tym, że trzymamy 
już wciśnięty [Shift].

Fonty w konsoli

Nie  wszyscy  pracują  w  X  Window.  Wielu  użytkowników 
z różnych powodów preferuje konsolę tekstową, wspiera-
ną czasem przez framebuffer. Również w konsoli możemy 
chcieć ustawić sobie inną czcionkę niż domyślna.

Większość  dystrybucji  obecnie  wykorzystuje  pakiet 

Kbd,  zawierający  nie  tylko  zbiór  fontów  bitmapowych, 
ale również kilka narzędzi (np. do ustawiania mapy kla-
wiatury).  Nas  w  tej  chwili  interesują  jednak  tylko  fonty 
i ich wykorzystanie. Same pliki czcionek powinny znaj-
dować  się  w  katalogu  /lib/kbd/consolefonts/  (tak  jest  w 
Auroksie,  lecz  może  to  być  też  katalog  /usr/share/kbd/
consolefonts/
 lub inny). Do ich ładowania służy nam pole-
cenie 

setfont

.

Przykładowo, jeśli chcemy na bieżącej konsoli uzyskać 

większe  czcionki,  możemy  wczytać  font  LatArCyrHeb-19
mający  rozmiar  znaków  8  na  19  pikseli.  Robimy  to  pole-
ceniem:

setfont LatArCyrHeb-19 -m 8859-2

Dodatkowy  parametr  -m  8859-2  wskazuje,  że  lokalnym 
zestawem znaków jest ISO 8859-2. W ten sposób możemy 
na  każdej  konsoli  pracować  z  innym  zestawem  fontów  - 
zależnie od potrzeb. Jeśli nie jesteśmy pewni, w jakim kata-
logu znajdują się czcionki, możemy dodać do wywołania 
parametr -v, który spowoduje wydrukowanie dodatkowych 
komunikatów.  Przykładowo  w  wyniku  polecenia 

setfont 

-v 

(ładującego  domyślną  czcionkę)  zostanie  wyświetlona 

linia o treści zbliżonej do poniższej:

Loading 256-char 8x16 font from file //lib/kbd/

consolefonts/default8x16.psfu.gz

To,  że  plik  z  fontem  jest  spakowany  programem  Gzip
w niczym nie przeszkadza – system sam sobie radzi z roz-
pakowaniem go w razie potrzeby.

Warto wiedzieć, w jaki sposób określić czcionkę, która 

ma być domyślnie wykorzystywana po uruchomieniu sys-
temu. Oczywiście, możemy po prostu powyższe polecenie 
wstawić do skryptu startowego (np. do pliku ~/.bash_profi-
le
). Mamy jednak lepsze rozwiązanie.

W pliku /etc/sysconfig/i18n powinniśmy umieścić nastę-

pujące linie:

SYSFONT=”lat2a-16”
SYSFONTACM=”iso02”

I  to  już  wszystko.  Dzięki  temu  podczas  wykonywania 
skryptów startowych zostanie wczytana czcionka lat2a-16
Dokładniej rzecz biorąc, zostanie wykonany skrypt setsys-
font
, który wywoła komendę postaci:

setfont lat2a-16 -m 8859-2

Oczywiście zamiast lat2a-16 możemy użyć innego, odpo-
wiadającego nam fontu spośród znajdujących się w katalo-
gu /lib/kbd/consolefonts/.

Zakończenie

Mam  nadzieję,  że  niniejszy  artykuł  wyjaśnił  wszelkie 
wątpliwości  Czytelników  dotyczące  instalacji  czcionek 
Linuksie. Starałem się skupić na informacjach praktycz-
nych.  Wierzę,  że  zawarte  w  artykule  informacje  pozwolą 
Czytelnikom  na  zainstalowanie  nowych  czcionek  i  takie 
skonfigurowanie  systemu,  aby  korzystanie  z  niego  było 
wygodne i przyjemne. 

W Sieci:

•   Porównanie formatów Type1 i TrueType:
     http://studweb.euv-frankfurt-o.de/twardoch/f/pl/font/
      sparing/sparing_nn.html
•   Kbd:
     http://freshmeat.net/projects/kbd/
   Fontconfig:
     http://freedesktop.org/software/fontconfig/
•   Mozilla ze wsparciem dla Xft:
     http://www.scottbolander.com/mozilla-xft.html
•   Czcionki.com:
     http://www.digit.pl/czcionki/
•   Fontoholic:
     http://www.nowak.tv/fontoholic/
•   Dingbat pages:
     http://www.dingbatpages.com/
•   Simply the Best Fonts:
     http://simplythebest.net/fonts/
•   HighFonts.com:
     http://www.highfonts.com/