Как получить альтернативный открытый g с помощью unicode-math и Libertinus Math?

Как получить альтернативный открытый g с помощью unicode-math и Libertinus Math?

Я использовалnewtxmathс libertine опцией (так Linux Libertine) с pdflatex движком раньше, но переключился наunicode-mathв xelatex.

newtxmathпредоставил мне прекрасный открытый курсив г, которые, похоже, являются предпочтительной формой для математики. Я не знаю, как это сделать с unicode-mathиМатематический шрифт Libertinus(лучший выбор для Linux Libertine). Я покопалсяnewtxmath.styно не смог найти никакой полезной информации о том, что делает пакет, чтобы получить открытый г. Я просмотрел таблицы глифов Linux Libertine и тоже не смог его найти.


pdflatexMWE с желаемым открытием г:

\documentclass{standalone}

\usepackage[libertine]{newtxmath}

\begin{document}
\(g\)
\end{document}

открытый г


xelatex/ unicode-mathMWE с обычным г:

\documentclass{standalone}

\usepackage{unicode-math}
\setmathfont{Libertinus Math}

\begin{document}
\(g\)
\end{document}

уродливый г


Возможные решения, которые я могу придумать:

  • Проанализируйте, как newxmathсоздается открытый g и используйте это
  • импортируйте Open G как векторную графику и сделайте из нее математическую букву, если это возможно
  • Используйте только OpenG Linux Libertine (если таковой имеется) вместе с Libertinus.

решение1

IMHO newtxmath используйте этот шрифт с опцией libertine для g

\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Libertinus Math}
\DeclareFontFamily{OML}{nxlmi}{\skewchar \font =127}
          \DeclareFontShape{OML}{nxlmi}{m}{it}{
           <-6.3>  nxlmi035
           <6.3-8.6> nxlmi037
           <8.6->  nxlmi03
          }{}
 \DeclareSymbolFont{gletters}{OML}{nxlmi}{m}{it}
 \DeclareMathSymbol{g}{\mathalpha}{gletters}{`g}
\begin{document}
\(abc fg \) 
\end{document}

введите описание изображения здесь

решение2

Вы можете использовать открытый g из newtxmathобъявления символа. Однако fdфайл включает несколько \ifоператоров, которые должны быть объявлены заранее; но формы шрифта могут быть определены напрямую. (Вероятно, не работает с жирной математикой)

\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Libertinus Math}

\DeclareFontFamily{U}{ntxmia}{\skewchar\font=127 }
\DeclareFontShape{U}{ntxmia}{m}{it}{<->nxlmia}{}
\DeclareFontShape{U}{ntxmia}{b}{it}{<->nxlbmia}{}
\DeclareSymbolFont{lettersA}{U}{ntxmia}{m}{it}
\SetSymbolFont{lettersA}{bold}{U}{ntxmia}{b}{it}
\DeclareMathSymbol{g}{\mathord}{lettersA}{49}

\begin{document}

$\mitg$ $g$

$\mathbfit{g}$ \boldmath$g$\unboldmath

\end{document}

введите описание изображения здесь

Связанный контент