TeX весьма продвинут в смысле шрифтов.
Сначала обсудим, как TeX работает с шрифтами.
Его интересуют только размеры букв, которые записаны в *.tfm файлах.
Если надо написать пару слов новым шрифтом (размеры букв которого записаны в файле lhr10.tfm), то его можно подключить так:
\font\MyFont lhr10 at 15pt ..... обычный шрифт {\MyFont другой шрифт } снова обычный шрифт
В LaTeX для переключения между шрифтами используется NFSS (читайте о ней в fntguide).
Вот небольшая подсказка:
Для этого делаем файл lcomyf.fd:
---------начало файла--------- \ProvidesFile{LCOmyf.fd} \DeclareFontFamily{LCO}{myf}{} %% Приделываем шрифт decor к насыщенности "m" и %% начертанию "n" \DeclareFontShape{LCO}{myf}{m}{n}{<-> decor}{} %% Подставляем вместо шрифта с начертанием "sc" %% шрифт с начертанием "n" \DeclareFontShape{LCO}{myf}{m}{sc}{<->ssub * myf/m/n}{} \endinput ---------конец файла----------
Обратите внимание на название файла - оно состоит из названия кодировки и названия семейства. Он подключается автоматически, при первом обращении к семейству myf.
Можно пользоваться и нестандартными начертаниями.
Например: добавляем в файл строчку
\DeclareFontShape{LCO}{myf}{m}{xx}{<-> font}{}
и на этот шрифт можно будет переключиться командой
\fontshape{xx}\selectfont
Обычный шрифт состоит из трех частей
Обратите внимание, в файле lhr10.mf (это один из наиболее часто используемых шрифтов) указан список параметров шрифта. Так что новый шрифт сделать очень просто, надо изменить эти параметры, сделать *.tfm посредством mktfm file, а *.pk будут генерироваться сами по мере надобности.
Более интересный способ создания своих шрифтов - воспользоваться пакетом MFF.
Кстати, командой testfont можно посмотреть на буквы в шрифте.
DVI драйвер dvips умеет работать с PostScript шрифтами двумя способами:
Кроме того, dvips умеет шрифт растягивать, наклонять и менять в нем кодировку.
С техническими деталями можно познакомиться в инструкции к dvips,
а в этом дистрибутиве основные операции автоматизированы.
В самом простом случае шрифт устанавливается одной командой:
mkfnt font
Эта прог. заведует установкой шрифтов.
Затем надо запустить test.bat и смотреть, что получилось.
При этом следует обратить внимание на:
И на названия русских букв (если они называются типа afii10032 то это прекрасно, если иначе, то не все потеряно))
Эта команда не вносит никаких изменений в систему, она создает все небходимое для установки. Проверив, исправив и запустив !!!setup.bat установим шрифт с именем font.
И вообще, обратите внимание на файлы !!!*.bat
(подсказка: команда
sed -n "s/^C \([^;]*\).*N \([^;]*\);.*/\/\2 \1/p" file.afm
достанет из file.afm названия букв, а
mkfnt -rus file.afm >file.rus в большинстве случаев сделает все сама.)
Затем сделать:
mkfnt font -n Имя -rus file
Поддерживаются две кодировки - LCO (как в шрифте lhr, на ней основана русификация) и LCOT (как в шрифте lhtt)
Если нужны другие кодировки, разбирайтесть с mkfnt.bat (Подсказка: если нужна кодировка T2, сделайте в директорию.....\lib\mkfnt\t2) и положите туда исправленные файлы lig.bat и enc.bat
Есть готовый пакет, позволяющий (почти полностью) перейти на PostScript шрифты:
arial.ttf, arialbd.ttf, ariali.ttf, arialbi.ttf
cour.ttf, courbd.ttf, couri.ttf, courbi.ttf
times.ttf, timesbd.ttf, timesi.ttf, timesbi.ttf