latex Размер шрифта текста. Разные варианты, примеры
![]()
Итак, вот модификаторы — в порядке от самого большого к самомй маленькому.
Получим:
$\Huge Это\;\; какой-то\;\; текст$
$\huge Это\;\; какой-то \;\;текст$
$\LARGE Это \;\;какой-то\;\; текст$
$\Large Это\;\; какой-то\;\; текст$
$\large Это \;\;какой-то\;\; текст$
$\normalsize (размер \;\;по \;\; умолчанию) \;\;Это\;\; какой-то\;\; текст$
$\small Это\;\; какой-то\;\; текст$
$\scriptsize Это\;\; какой-то \;\;текст$
$\tiny Это\;\; какой-то\;\; текст$
\normalsize — это размер текста по-умолчанию.
Каждый из этих модификаторов «переключает» размер всего дальшего текста, поэтому если вам необходимо вернуться к нормальной размерности, то нужно после модификации вызвать \normalsize, например, при использвании кода (здесь приходится вручную указывать пробелы, что связано со следующим -по идее же можно ставить обычные пробелы):
Получим:
$ \Large Это \;\; заголовок
\\
\normalsize Это\;\; первая\;\; строка
\\
Это \;\; вторая \;\;строка$
Как изменить размер шрифта в latex
L A T E X выбирает подходящее начертание и размер шрифта, основываясь на логической структуре документа (разделы, сноски, . ). Иногда может быть желательно сменить шрифт вручную. Для этого вы можете пользоваться командами, перечисленными в таблицах. Действительный размер каждого шрифта определяется дизайном и зависит от класса и опций документа. Таблица показывает абсолютные размеры, соответствующие этим командам в стандартных классах документов.
Маленький, полужирный , большой, курсив .
Важная особенность L A T E X2 e заключается в том, что атрибуты шрифта независимы. Это значит, что вы можете давать команды смены размера или даже семейства шрифта, сохраняя при этом установки атрибутов наклона или насыщенности.
В математическом режиме вы можете использовать команды смены шрифта, чтобы временно выйти из математического режима и ввести нормальный текст. Если вы хотите переключиться на другой шрифт для верстки математики, то для этого существует отдельный набор команд. Смотрите таблицу.
| |
| |
| |
| |
В связи с командами смены размера шрифта заметную роль играют фигурные скобки. Они используются для построения групп . Группы ограничивают область действия большинства команд L A T E X.
Ему нравятся большие и маленькие буквы .
Команды, влияющие на размер шрифта, влияют также на расстояние между строками, но только если соответствующий абзац заканчивается внутри области действия команды. Поэтому закрывающая фигурная скобка > не должна стоять слишком рано. Заметьте положение команды \par в следующих двух примерах:
Не читайте это! Это неправда. Верьте мне!
Это тоже неправда. Но помните, что я вру.
Если вы хотите применить команду изменения размера к целому абзацу текста или больше того, то для этого лучше использовать синтаксис окружения.
Шрифты в Latex
Иногда встречаются требования заполнять документ конкретным шрифтом. Есть несколько методов, позволяющих использовать не входящие в стандартную поставку \(\LaTeX\) шрифты с кириллицей, например, Verdana, Courier, Georgia, Ubuntu Mono. Сначала немного терминологии, затем описаны методы получения разных шрифтов в документе. Больше теории (и лучше) на en.wikibooks.org.
Семейства шрифтов (font families)
В \(\LaTeX\) определены семейства шрифтов:
\rmfamily Roman family — шрифты с засечками (serif);
\sffamily Sans serif family — шрифты без засечек (sans-serif);
\ttfamily Typewriter family — моноширинные шрифты (они же monospace), где все символы имеют одинаковую ширину.
Стандартное значение \familydefault — \rmfamily , то есть текст, набранный без каких-либо уточнений в документе, будет напечатан шрифтом, который установлен для \rmfamily (см. ниже). Это можно изменить в преамбуле, например:
Начертания шрифтов (font styles)
У шрифтов может быть несколько начертаний. Не все шрифты имеют все возможные начертания. Если у шрифта есть жирный и есть курсив, то жирного курсива может и не быть. Также обратите внимание, что курсив и наклонный шрифт — разные вещи. Двухбуквенные команды ( \rm , \it и т.д.) считаются устаревшими, их использование не рекомендуется. Не следует путать \emph с \textit , хоть в большинстве ситуаций они и дают одинаковый результат.
Шрифты по умолчанию
Взглянем на шрифты по умолчанию.
Такой код даст следующий результат (default-fonts.pdf):
Команды <\rmfamily . >, <\sffamily . >и <\ttfamily . >обычно не используются, рекомендуют использовать \textrm < . >, \textsf < . >и \texttt < . >соответственно.
Переключение шрифтов
Во всём документе
Поменять шрифты для всего документа можно в преамбуле командой \renewcommand<семейство> <аббревиатура шрифта>. Например, поставленные в преамбулу команды
установят стандартные шрифты cmr для \rmfamily , cmss для \sffamily и cmtt для \ttfamily . Приведённые команды никак не изменят внешний вид документа, потому что в них указаны стандартные значения. Если же добавить в преамбулу к последнему примеру
то весь текст будет написан одним и тем же шрифтом Computer Sans Serif. \sfdefault можно не указывать, потому что Computer Sans Serif — и так его стандартное значение. Таким образом, для семейства шрифтов \rmfamily можно использовать любой шрифт — необязательно с засечками.
Временно
Временно сменить шрифт в документе можно так:
Например, чтобы применить ко всему тексту после команды:
Либо так, чтобы изменить шрифт только между <> :
Временно переключить шрифты можно и другой командой:
Шрифты, входящие в texlive
С кириллицей
Здесь перечислены некоторые из шрифтов с кириллицей, которые можно подгрузить по \usepackage<> . В системе надо установить texlive-full , чтобы не пришлось каждый пакет устанавливать отдельно. Мне пакеты в преамбуле подключать не пришлось, работает и код, представленный ниже.
Такой код даст следующий результат (texlive-fonts.pdf):
Примечание: pdflatex компилирует это спокойно, а latex + dvipdfmx не работает с Cantarell и Open Sans.
Без кириллицы
\rmfamily — с засечками
| Аббревиатура | Название шрифта |
|---|---|
| lmr | Latin Modern Roman |
| pbk | Bookman |
| bch | Charter |
| pnc | New Century Schoolbook |
| ppl | Palatino |
| ptm | Times |
\sffamily — без засечек
| Аббревиатура | Название шрифта |
|---|---|
| lmss | Latin Modern Sans Serif |
| pag | Avant Garde |
| phv | Helvetica |
\ttfamily — моноширинные
Моноширинные шрифты (monospace) также иногда называют Typewriter Fonts.
| Аббревиатура | Название шрифта |
|---|---|
| lmtt | Latin Modern |
| pcr | Courier |
Любой шрифт в xelatex/lualatex
Что делать, если нам нужен какой-то другой шрифт, не входящий в стандартную поставку LaTeX, но установленный в системе?
Быстрее всего будет использование XeLaTeX или LuaLaTeX вместо LaTeX. Если команды xelatex и lualatex системе неизвестны, поставьте пакет texlive-full. В Debian/Ubuntu это можно сделать так: sudo apt-get install texlive-full .
Такой код позволят задавать русские шрифты при компиляции xelatex или lualatex (LaTeX такое не скомпилирует):
Обратите внимание, что если не уточнять, каким семейством печатать шрифт, по умолчанию будет использоваться шрифт, установленный для семейства \rmfamily , то есть то, что было указано в преамбуле командой \setmainfont .
Любой шрифт в latex/pdflatex
А что, если нужно использовать именно LaTeX, а не XeLaTeX, и конкретный шрифт, поддерживающий кириллицу? Перечислю некоторые варианты. Пакеты winfonts и PSCyr предоставят ограниченное количество шрифтов, а в следующем разделе описано, как использовать действительно любой шрифт.
Пакет winfonts
Пакет разработан для использования имеющихся в Windows шрифтов с помощью MiKTeX & Windows. Инструкция по установке и настройке есть в README. Доступны шрифты Arial, Franklin, Gothic, Tahoma, Comic Sans, Georgia, Times, Courier, New Palatino, Linotype, Verdana, Wingding, Webdings. Подключается \usepackage
Пакет PSCyr
Установка PSCyr
Здесь я немного сократил процесс установки, описанный повсеместно, проделав необходимые операции с файлами в архиве заранее.
Скачивайте архив pscyr.zip и разархивируйте:
Выясните, где лежит каталог texmf , и скопируйте туда содержимое архива:
Расскажите латеху о шрифтах, которые он отныне сможет использовать:
Использование pscyr
Код ftm соответствует шрифту Times New Roman. Компилировать документ можно с помощью latex или pdflatex . Поиск по файлу работает. Результат (pscyr.pdf):
Коды шрифтов PSCyr
| Код шрифта | Название шрифта |
|---|---|
| fac | Academy |
| fad | Advertisement |
| faq | AntiquaPSCyr |
| fco | College |
| fcp | CooperPSCyr |
| fer | ERKurierPSCyr |
| fha | HandbookPSCyr |
| fjn | JournalPSCyr |
| flz | Lazurski |
| fma | MagazinePSCyr |
| fsv | SouvenirPSCyr |
| ftx | TextbookPSCyr |
| far | ArialMT |
| fcr | CourierNewPSMT |
| ftm | TimesNewRomanPSMT |
Замечания
Пакет PSCyr , установка которого описана в этой записи, не обновляется уже почти 15 лет. Было любопытно бы разобраться с юридическим статусом этих шрифтов. Официальное место хранения пакета, по-видимому, тут.
Если пакет не заработал, попробуйте выполнить ещё updmap-sys .
Использование любого .ttf файла
Эта инструкция основана на ныне недоступной записи.
Скачайте ttf файлы требуемых начертаний шрифта — жирный, курсив, жирный курсив, нормальный и т.д. Для примера рассмотрим шрифт Times (файлы: times.ttf — нормальный, timesi.ttf — курсив, timesbd.ttf — жирный, timesbi.ttf — жирный курсив). Times я скачал тут.
Положите все .ttf файлы к .tex файлу и выполните:
В myfonts.map добавьте название .ttf файла шрифта перед <t2a.enc , у меня получилось так:
Создайте файл ttfonts.map с такими строками:
Создайте файлы с названием t2a<имяшрифта>.fd, в нашем случае t2atimes.fd . Поместите туда информацию о шрифте:
Закомментированы здесь строки с наклонным (slanted) шрифтом, так как этих файлов у меня не было.
Чтобы в pdf работал поиск и можно было скопировать выделенный текст, можно подключить пакет cmap .
Если все шрифты выглядят хорошо, можно их разложить туда, где обычно latex хранит получившиеся в нашей папке .afm, .fd, .tfm файлы. Тогда использовать подготовленные шрифты можно будет и в других проектах. Я, однако, этого не делал. Некоторую информацию по этой теме можно найти здесь.
Также везде рекомендуют манипуляции с файлом pdftex.cfg , но я их опустил, так как всё заработало и без этого. Если что, см. ссылку выше.
Недостатки этого метода
У меня при скачанных по ссылке выше шрифтах проявился такой баг: при компиляции latex + dvips + ps2pdf или pdflatex буква «ё» отображается корректно, тогда как при компиляции latex + dvipdfmx буква «ё» заменяется на «j».
.ttf без кириллицы
Использовать в latex файл шрифта .ttf без кириллицы проще.
В t1myfont.fd вставить:
Добавить в преамбулу (возможно, это не обязательно):
Использовать шрифт в документе: \fontfamily
Вывод
Не надо менять шрифты в \(\LaTeX\), используйте стандартный Computer Modern, и не будет проблем с математикой, отсутствующими буквами и прочих прелестей.