Instalowanie fontów Type 1/TrueType

Instalowanie fontów Type 1

Podczas składania tekstu TeX korzysta wyłącznie z plików metrycznych. Pliki takie mają rozszerzenie .tfm. Pliki metryczne nie zawierają informacji co do kształtu znaków, te są zdefiniowane w innych plikach. Aby mieć możliwość wydrukowania złożonego dokumentu należy plik dvi zamienić na plik w formacie PostScript. W każdej dystrybucji TeX-a znajduje się program dvips wykonujący taką zamianę. Program ten korzysta z plików z rozszerzeniem .pfb, zawierających definicje kształtu znaków; może także korzystać z innych, pomocniczych plików.

Zainstalowanie fontów typu pierwszego w systemie TeX polega na umieszczeniu kilku plików w odpowiednich miejscach. Poniżej opisano cały proces, biorąc za przykład instalację pakietu fontów Antykwa Toruńska.

Streszczenie

Ponieważ cały proces instalacji fontów Type1 może się wydać nieco skomplikowany (szczególnie dla początkujących), wymienimy tu pokrótce poszczególne kroki. Pakiet fontowy zawiera zwykle kilka plików:

  • pliki metryczne .tfm, z których korzysta TeX. W strukturze katalogów zgodnej z TDS (TeX Directory Standard) instalujemy je w katalogu ~/texfm/fonts/tfm/. Szczegóły, patrz część dot. samego TeX-a.
  • pliki fontowe .pfb, z których korzysta dvips, instalujemy w katalogu ~/texfm/fonts/type1/.
  • pliki przekodowania .enc, oraz
  • pliki map fontowych .map, z których także korzysta sterownik dvips, instalujemy w podkatalogu ~/texfm/dvips/. Dla Antykwy Toruńskiej podkatalog może mieć nazwę antyktor/. Szczegóły, patrz część dot. Dvips.
  • pliki .sty oraz .fd zawierają makra włączania fontu do składu i definicje fontów, przydatne dla użytkowników LaTeX-a. Instalujemy je w katalogu przeznaczonym na makra i style: ~/texfm/tex/latex/. Jeśli pakiet dystrybucyjny z fontami nie zawiera takich plików, należy je odszukać w innym, towarzyszącym pakiecie. Szczegóły, patrz część dot. LaTeX.

    TeX

    Pliki .tfm powinny być umieszczone w katalogu, w którym TeX szuka tego typu plików. W instalacji TeX-a o strukturze katalogów zgodnej z TDS będzie to ~/texmf/fonts/tfm/. Znak ~ oznacza tu korzeń drzewa TeX-owego, np. /usr/TeX lub C:\tex. Dla wprowadzenia porządku dobrze jest utworzyć podkatalog, który będzie przechowywał nowo instalowane pliki. Pliki metryczne Antykwy Toruńskiej można np. umieścić w katalogu ~/texmf/fonts/tfm/public/antyktor/

    W systemach TeX-a opartych na bibliotece web2c (
    fpTeX, teTeX) istnieje główny plik konfiguracyjny systemu, którym jest plik texmf.cnf, znajdujący się zwykle w katalogu ~/texmf/web2c/. texmf.cnf zawiera deklaracje określające katalogi, w których znajdują się poszczególne części składowe systemu. I tak zmienna TFMFONTS określa listę katalogów, w których TeX ma szukać plików TFM. W naszej instalacji zmienna TFMFONTS ma wartość:

     TFMFONTS = .;{$TEXMF/fonts,$VARTEXFONTS}/tfm//
    

    W przypadku popularnej w środowisku MS Windows dystrybucji MikTeX idea jest podobna ale inne są szczegóły, ponieważ dystrybucja ta nie jest oparta na web2c. Główny plik konfiguracyjny miktex.ini znajduje się raczej w katalogu ~\miktex\config\. Zapis zmiennych i ich nazwy różnią się od ich odpowiedników w dystrybucjach fpTeX i teTeX. I tak do określenia katalogów zawierających pliki TFM MikTeX używa zmiennej TFMPath, zaś zapis może wyglądać następująco:

    TFMPath=.;%R\fonts\tfm//
    

    Notacja użyta w powyższych przykładach i jej interpretacja są opisane w obu wymienionych plikach konfiguracyjnych.

    dvips

    Podstawowymi i najważniejszymi plikami konfiguracyjnymi programu dvips są: config.ps oraz psfonts.map. Oba znajdują się w katalogu ~/texmf/dvips/config/. Plik config.ps zawiera deklaracje m.in. używanych przez program map fontowych (standardowo jest to psfonts.map), zaś plik psfonts.map zawiera informacje niezbędne do prawidłowego wykorzystania fontu typu pierwszego przez sterownik; jest to tzw. mapa fontów używanych przez program. Właściwe pliki fontowe (.pfb) powinny być umieszczone w katalogu przeszukiwanym przez sterownik dvips. W systemie TeX o strukturze katalogów zgodnej z TDS będzie to ~/texmf/fonts/type1/. Także w tym przypadku dobrze jest utworzyć podkatalog, np. pliki .pfb Antykwy Toruńskiej można umieścić w katalogu ~/texmf/fonts/type1/public/antyktor/.

    Definiowana w pliku texmf.cnf zmienna T1FONTS (lub zmienna Type1Path z pliku miktex.ini w przypadku instalacji MikTeX) określa listę katalogów, w których dvips ma szukać fontów typu 1. W naszej instalacji zmienna T1FONTS ma wartość:

     T1FONTS = .;$TEXMF/fonts/type1//
    

    Zawartość pliku .map, dostarczonego zwykle w pakiecie z fontami (dla Antykwy Toruńskiej jest to plik antt.map), należy dołączyć do głównego pliku map fontowych psfonts.map (w strukturze katalogów zgodnej z TDS plik ten znajduje się w katalogu ~/texmf/dvips/config/). Dołączyć go można albo poprzez proste dopisanie jego zawartości do pliku psfonts.map, albo poprzez dopisanie w pliku config.ps (katalog ~/texmf/dvips/config/) po deklaracji

    p config.ps
    
    linijki:
    p +antt.map
    
    (uwaga: znak + jest istotny). Plik antt.map należy umieścić w katalogu ~/texmf/dvips/antyktor/. Fonty Antykwa Toruńska, Antykwa Półtawskiego, czy Quasi Palladio oraz wiele innych posiadają ponadto pliki .enc potrzebne do zmiany kodowania wewnętrznego fontu na kodowanie wymagane przez TeX-a. Pliki takie należy umieścić w podkatalogu ~/texmf/dvips/ (w instalacji MikTeX: ~\dvips\). Dla Antykwy Toruńskiej podkatalog będzie miał nazwę antyktor/.

    Pliki .afm (Adobe Font Metric) nie są wprawdzie wykorzystywane przez TeX-a, ale mogą być potrzebne dla innych programów wspomagających. Umieścić je należy w katalogu ~/texmf/fonts/afm/public/antyktor.

    Definiowana w pliku texmf.cnf zmienna AFMFONTS (lub zmienna AFMPath z pliku miktex.ini w przypadku dystrybucji MikTeX) określa listę katalogów, w których programy mają szukać plików AFM. W naszej instalacji zmienna AFMFONTS ma wartość:

     AFMFONTS = .;$TEXMF/fonts/afm//
    

    Pliki .pfm -- jeżeli takowe są dołączone do pakietu z fontami -- nie są wykorzystywane przez żaden program systemu TeX; można je umieścić, dla porządku, w katalogu ~/texmf/fonts/pfm/public/antyktor. Pliki te mogą być przydatne w systemach Windows i OS/2 jeśli chcemy korzystać z fontów w innych aplikacjach i jeśli posiadamy program ATM (Adobe Type Menager).

    Jeżeli instalujemy font samodzielnie i nie posiadamy gotowego pliku .map to powinniśmy dokonać odpowiedniego wpisu do głównego pliku mapowego psfonts.map. Więcej informacji na ten temat można znaleźć w punkcie Pliki konfiguracyjne sterownika DVIPS z artykułu Fontowe ABC, B. Jackowskiego i S. Wawrykiewicza.

    LaTeX

    Aby móc wykorzystać zainstalowane fonty użytkownicy LaTeX-a muszą jeszcze zainstalować odpowiedni pakiet. Typową sytuacją jest, że pakiet z fontami nie zawiera odpowiedniego pakietu LaTeX-owego, który -- jeżeli nie ma go w standardowej dystrybucji LaTeX-a -- trzeba odnaleźć i zainstalować samodzielnie. Pakiet taki zawiera styl włączający dany krój do składu (z reguły jest to plik z rozszerzeniem .sty) oraz plik (lub pliki) z definicją fontu (z reguły z rozszerzeniem .fd). Instalacja polega na skopiowaniu plików .sty.fd do katalogu, w którym znajdują się inne pakiety LaTeX-owe, np. do ~/texmf/tex/latex/. W przypadku Antykwy Toruńskiej należy zainstalować pakiet pl-qx dostępny we wszystkich węzłach CTAN oraz w wielu dystrybucjach TeX-a.

    pdfTeX/pdfLaTeX

    Program pdfTeX jest rozszerzeniem TeX-a, który tworzy (właśnie w trybie rozszerzonym) plik wynikowy w formacie PDF (Portable Document Format), zamiast typowego DVI. Hipertekstowe pliki PDF mogą być przeglądane na wielu platformach systemowych dzięki udostępnionemu bezpłatnie programowi Adobe Acrobat Reader, zachowując przy tym wszystkie szczegóły układu strony. Opisana powyżej instalacja fontów Type1 różni się dla pdfTeX jednym szczegółem: należy zadbać aby zawartość pliku mapy fontowej została dołączona do pliku pdftex.map (znajduje się on w katalogu ~/texmf/dvips/config/). Tworząc pliki PDF musimy pamiętać aby stosować wyłącznie fonty obwiedniowe (Type1 lub True Type -- patrz niżej), ponieważ fonty bitmapowe są zwykle fatalnie wyświetlane w przeglądarce.

    Instalowanie fontów TrueType

    W powszechnie używanych w chwili obecnej dystrybucjach TeX-a (fpTeX, teTeX, MikTeX) nie ma sterowników potrafiących bezpośrednio wykorzystać fonty w formacie TrueType. Chcąc skorzystać z takich fontów należy dokonać odpowiedniej konwersji, która może ona polegać na ich zamianie albo na fonty bitmapowe w formacie .pk, albo na zamianie na fonty w formacie Type 42.

    Pierwszy sposób można określić mianem standardowego -- jeżeli umieścimy pliki .ttf.tfm w odpowiednich katalogach, to w dystrybucjach, które omawiamy, przy uruchomieniu program dvips lub sterownika ekranowego (yap, xdvi), zostaną automatyczne uruchomione programy generujące fonty .pk o odpowiedniej rozdzielczości, podobnie jak sprawa ma miejsce przy generowaniu fontów .pk na podstawie plików źródłowych .mf. Sposób ten ma jedną zasadniczą wadę: fonty .pk -- jak każde fonty bitmapowe -- nie nadają się do wykorzystania przy tworzeniu dokumentów w formacie PDF.

    Uwaga 1: Ponieważ współczesne systemy TeX-owe potrafią skorzystać z fontów .ttf ,,z definicji'', ale jednocześnie sposób ten nie bardzo się nadaje, np. do tworzenia wysokiej jakości plików PDF, poniżej omawiamy bardziej szczegółowo jedynie wykorzystanie fontów .ttf po ich konwersji do formatu Type 42.

    Uwaga 2: Zakładając, że pakiet, który instalujemy zawiera fonty .tfm, instalacja fontów TrueType nie różni się zbytnio od instalowania fontów Type 1. Jeżeli nie dysponujemy fontami .tfm, to sprawa się komplikuje -- bo utworzenie plików .tfm nie jest sprawą trywialną. W grę wchodzą sprawy różnego kodowania znaków, tzw. fonty wirtualnych itp. Ponieważ niniejszy tekst ma charakter wprowadzenia dla początkujących nie będziemy omawiać tego zagadnienia [prawdę powiedziawszy w przypadku fontów TrueType nie jest ono zbyt realistyczne, gdyż z reguły nie dysponujemy przygotowanymi przez kogoś plikami .tfm czy .enc].

    Informacje na temat narzędzi i problemów zamiany plików ttf na pliki tfm można znaleźć w artykule T. Przechlewskiego Uwagi nt. wykorzystania fontów True Type (Biuletyn GUST, 11/1998).

    TeX/LaTeX, dvips

    Pliki .tfm, .enc oraz .map kopiujemy w sposób analogiczny do opisanego wyżej. Fonty typu 42 mogą być wykorzystane przez program dvips a powstały plik PostScriptowy może być wydrukowany za pomocą programu ghostscript i innych interpretatorów PostScripta (byle nie bardzo starych). Do zamiany pliku .ttf na font typu 42 (załóżmy, że taki font ma rozszerzenie .t42) można wykorzystać program ttftot42:

     ttftot42 anttr
    

    Powstały w wyniku plik .t42 kopiujemy do odpowiedniego katalogu. W systemie TeX o strukturze katalogów zgodnej z TDS będzie to ~/texmf/fonts/type42/. Należy się upewnić gdzie dvips szuka fontów typu 42. Zaglądamy w tym celu do głównego pliku konfiguracyjnego systemu TeX, którym jest plik texmf.cnf (zwykle katalog ~/texmf/web2c/). Powinien on zawierać wpis podobny do poniższego:

     % Type 42 outline fonts.
     T42FONTS = .;$TEXMF/fonts/type42//
    

    Jeżeli takowego wpisu nie ma, to trzeba go dodać. Powyższy zapis oznacza, że fonty są szukane albo w katalogu bieżącym (kropka) albo w katalogu (i  wszystkich jego podkatalogach) $TEXMF/fonts/type42//, gdzie $TEXMF oznacza korzeń drzewa TeX-owego.

    pdfTeX/pdfLaTeX

    W trybie rozszerzonym pdfTeX potrafi korzystać bezpośrednio z fontów .ttf -- nie musimy zatem ich konwertować do formatu type 42. Więcej szczegółów można znaleźć w opisie programu pdfTeX.

    T. PrzechlewskiS. Wawrykiewicz
    Ostatnia modyfikacja 25.02.2000


    Powrót