Справочник: математические шрифты

Разбираемся, как устроены шрифты для сложных многоэтажных формул и как с ними работают математики и дизайнеры

25 июля 2024 г.


Дисклеймер В этой статье мы часто упоминаем условных математиков, которые записывают и выводят формулы. Под математиками в этом случае мы понимаем всех, кто так или иначе работает с математикой — физиков, химиков, программистов, архитекторов, инженеров, аналитиков, экономистов, криптографов и других специалистов.


1 Страница из книги «Коммерческая арифметика» Пьетро Борги, 1484. Изображение: Баварская государственная библиотека


Что такое математические шрифты и чем они отличаются от не математических?

Математические шрифты предназначены для того, чтобы набирать сложные формулы и уравнения. В их кассах огромное количество специальных символов. Кроме них, в математических шрифтах есть знаки базовой латиницы, греческого алфавита, первые четыре буквы еврейского алфавита и цифры. В случае, если шрифт сделан для математиков, пишущих на арабском, в нём должны быть ещё и арабские знаки. (Математики, которые пишут, например, на иврите, болгарском или грузинском, пользуются для записи формул латиницей, поэтому могут работать с математическим шрифтом, не поддерживающим эти языки).


2 Равенство с арабскими знаками и восточными арабскими цфирами


3 Равенство со знаками латиницы и западными арабскими цфирами


В отличие от людей, которые занимаются текстами и пишут только слева направо (или справа налево), математики работают одновременно в двух плоскостях: вертикальной и горизонтальной, то есть пишут ещё и сверху вниз (добавляя числители и знаменатели). Поэтому в математических шрифтах должно быть по несколько скобок и квадратных корней разной высоты (но не разной насыщенности).


4


К математическим шрифтам нельзя применить привычную нам систему начертаний: А и А внутри одной формулы могут иметь разные значения. Поэтому в математических шрифтах, как правило, только одно начертание. При этом знаки математических действий, у которых в нематематических семействах есть курсивные варианты (+ =), в математических шрифтах бывают только прямыми.


6 Примеры знаков, которые в математических шрифтах могут быть как прямыми, так и курсивными.


7 Примеры знаков, которые в математических шрифтах могут быть только прямыми.


Математические акценты работают иначе, чем привычная нам диакритика. Математический акцент может располагаться над несколькими знаками сразу, таких акцентов в шрифте тоже должно быть несколько (для разного количества знаков).


8


Можно ли набирать текст математическим шрифтом?

Теоретически, да. Но если вы пишете не на английском, то в шрифте может не оказаться нужных вам глифов. Кроме того, спейсинг в математических шрифтах не предполагает, что знаки будут складываться в слова, поэтому в тексте, набранном математическим шрифтом, будут проблемы с межбуквенными расстояниями.

Но математические шрифты часто рисуют, расширяя уже существующее текстовое семейство, так что подобрать шрифтовую пару к математическому шрифту, как правило, несложно.


9


У математических глифов есть свой блок в юникоде?

Да, и не один. В первом из них — блоке Letterlike Symbols — всего 80 глифов. Это первые математические знаки (не считая простейших + =), которым были присвоены юникоды. В следующем блоке — Mathematical Alphanumeric Symbols — почти 1000 символов, среди них — например, жирная и регулярная латинские фрактуры, рукописный шрифт, знаки с обводкой и пять видов цифр.

Символы из этих двух блоков часто копируют и вставляют в описание профиля в соцсетях. А ещё такие символы добавляют в спам-рассылки, чтобы алгоритмы почтового клиента не смогли распознать текст и отправить письмо в соответствующую папку.


10


Для обозначения функций и математических действий в юникоде есть ещё шесть блоков: два блока знаков математических действий (U+2200–22FF и U+2A00–2AFF), два блока дополнительных математических символов (U+27C0–27EF и U+2980–29FF), стрелки и технические иконки.


25


26


В случае если шрифт предназначен для математиков, пишущих на арабском, в него входят ещё восточные арабские цифры и арабские математические знаки.

Глифы, которые должны быть в математическом шрифте, также находятся в блоках с базовой латиницей, греческим и дополнительными символами базовой латиницы (из этого блока математическим шрифтам нужны знаки простейших математических действий — например, деления или умножения).

Как отличить качественный математический шрифт от некачественного?

Качественный шрифт должен учитывать максимальное количество типографических усложнений, которые могут потребоваться математику. Например, в формулах — в отличие от наборного текста — часто бывает так, что за курсивным знаком следует прямой. Проверьте, не возникает ли в таком случае проблем с межбуквенным расстоянием.


11 Равенства со скорректированным (слева) и не скорректированным (справа) спейсингом


Символы, предназначенные для использования в очень мелком кегле (например, в формулах, где степень возведена в степень или у индекса есть индекс), должны быть оптически скомпенсированы, чтобы не выглядеть светлее того знака, к которому они относятся.


12 Степени с оптической компенсацией (слева) и без неё (справа)
Изображение: Халед Хосни (github)


Дробная черта, скобки и середины самых высоких знаков математического шрифта (например, знаков суммы и интеграла) должны находиться на одной оси (она называется Math Axis).


13


Степень и индекс не должны сталкиваться, даже если у индекса тоже есть степень.


14


В математическом шрифте должен быть дополнительный пробел, который автоматически ставится в случае, если выражение в скобках кончается степенью (чтобы компенсировать маленькие апроши степени).


15


Подробнее о том, что отличает качественный математический шрифт от некачественного, можно прочитать в руководстве для дизайнеров математических шрифтов, написанном Халедом Хосни.

Сколько всего глифов должно быть в математическом шрифте?

Универсального списка не существует, все зависит от задач, которые решает конкретный шрифт. Количество глифов в математических шрифтах может варьироваться от 1000 до 6000. (Для сравнения: в шрифте Inter с поддержкой 550 языков — 2547 глифов.)

Примерный список глифов, которые должны обязательно присутствовать в математическом шрифте, есть на сайте с документацией TeX.

TeX?

TeX — самая распространённая программа для вёрстки с открытым кодом, которой математики пользуются, чтобы писать и публиковать научные статьи. Как правило, математики устанавливают на компьютер пакет расширений — LaTeX — который упрощает работу с TeX, и дополнительный редактор для работы с этим пакетом. В редакторах LaTeX (таких как, например, Overleaf) можно разделить окно на две части, и в одной вводить команды, а в другой — смотреть, правильно ли программа конвертировала их в формулы.


16 Код на LaTeX (left). Шрифт: Cera Mono. Математическое равенство (справа). Шрифт: Latin Modern Math


Это что-то новое?

Дональд Кнут опубликовал первую версию TeX в 1978, а на год позже — первую версию MetaFont — своеобразного языка программирования, с помощью которого можно было рендерить и проектировать шрифты. В MetaFont положение точек на контуре глифа описывалось системой уравнений. С этим языком много экспериментировал Герман Цапф (на MetaFont сделан его шрифт AMS Euler,), а Джонатан Хёфлер — напротив, много критиковал разработку Кнута.


AMS Euler. Изображения: Люк Девройе


В LaTeX можно выбрать шрифт, которым будет набрана формула?

Теоретически, да. Но у системы TeX сложные отношения со шрифтами. Поскольку TeX появился задолго до формата OpenType, оригинальная версия системы работает только со шрифтами формата TFM, метрики в которых устроены иначе, чем в OpenType. Чтобы пользоваться современными шрифтами в математических статьях, придётся установить один из последних пакетов расширений — например, XeTeX или LuaTeX.

То есть математики используют LaTeX как блокнот?

Если математик занимается вычислениями, а не готовит к публикации статью, он, вероятнее всего, будет делать это на бумаге, как и много лет назад. В процессе вычислений математики часто вводят новые переменные, и нарисовать такую переменную от руки гораздо быстрее и удобнее, чем выяснять, есть ли она в шрифте и как её набрать.


Тетрадь математика, 1801. Изображение: Антикварная лавка Кевина Робертса


Чтобы сделать макет с большим количеством формул, дизайнер должен знать, как работает LaTeX?

Все зависит от задач дизайнера. Например, сверстать годовой отчёт в InDesign можно без знания LaTeX, для работы с формулами у InDesign есть плагин. У Figma есть плагин, который позволяет вставлять формулы, но не редактировать их. Сложные математические символы в плагине FigMath можно вводить как с помощью виртуальной клавиатуры, так и с помощью обычной (в виде TeX-команд).

Если вы работаете дизайнером выпуска в проекте с блогом или сайтом на Mirror — on-chain аналоге Notion, — то освоить LaTeX придётся.


24 Плагин для работы с формулами в InDesign


Нужно ли разработчику знать LaTeX, чтобы сверстать сайт с большим количеством формул?

Как правило, разработчики пользуются JavaScript-движком MathJax. Он позволяет встраивать в вёрстку сайта команды на LaTeX или MathML (Mathematical Markup Language) — языке разметки (как HTML), предназначенном для работы с формулами. Поэтому раньше разработчикам нужно было обязательно владеть LaTeX или MathML. Теперь же код LaTeX умеют писать нейросети, и разработчику достаточно понимать, как устроены LaTeX или MathML, чтобы править код, написанный искусственным интеллектом.

Кто рисует математические шрифты?

Разрабатывать математические шрифты сложно и долго, поэтому в основном этим занимаются корпорации — например, Cambria Math была нарисована по заказу Microsoft, а Noto Sans Math — по заказу Google.

Но есть и независимые проекты, которые занимаются математическими шрифтами. Например, канадский STIX (Scientific and Technical Information Exchange), цель которого — сделать научную информацию доступной максимальному количеству людей. Всю коллекцию шрифтов STIX можно бесплатно скачать на GitHub проекта.

Польская студия GUST разрабатывает шрифты специально для работы в LaTeX, они, например, обновляли шрифт Computer Modern (обновлённая версия называется Latin Modern), он тоже распространяется по открытой лицензии.

А на шрифтах для математиков, работающих на арабском, специализируется египетская студия Alif Type.


Мы благодарим Халеда Хосни за помощь в работе над этой статьёй.


Библиография

Упомянутые шрифты