
С XeLaTeX я использую fontspec и unicode-math без дополнительных опций для создания pdf-файлов, и это работает так, как и ожидалось в большинстве случаев. Однако при определенных обстоятельствах (указанных в конце этого вопроса) я хочу, чтобы (латинские) буквы в математическом режиме напрямую сопоставлялись с их обычными аналогами ASCII и просто использовал правильный шрифт (курсив, полужирный и т. д.) для создания правильного визуального вывода в качестве поведения по умолчанию.
Я мог бы добиться этого для определенных команд, например, $\mathit{x}$ сделает это правильно (я предполагаю) с помощью следующего кода, но $x$ по-прежнему сопоставляет ASCII-букву x в исходном коде с кодовой точкой U+1D465 в выходных данных.
\documentclass{article}
\usepackage{fontspec}
\usepackage{unicode-math}
\unimathsetup{
mathrm=text,
mathit=text,
mathsf=text,
mathbf=text,
mathtt=text,
math-style=ISO,
}
\begin{document}
$\mathit{x}$ <-- maps to ASCII x
$x$ <-- still maps to U+1D465
\end{document}
Итак, вкратце: как заставить unicode-math использовать ASCII-буквы в выводе по умолчанию?
Причины таковы:
1: Общая однородность внешнего вида, так как в некоторых шрифтах обычный курсив и математический курсив значительно отличаются друг от друга.
2: (Самое важное) Я пытаюсь создать svgs из некоторых фрагментов документа, сначала создав pdf (через шаблон, который импортирует фрагмент), а затем используя inkscape для преобразования в svg. Это пока дает наилучшие результаты, но inkscape не отображает математические буквы правильно, и я также беспокоюсь о совместимости с вебом.