unicode-math と Libertinus Math を使用して代替オープン g を取得するにはどうすればよいでしょうか?

unicode-math と Libertinus Math を使用して代替オープン g を取得するにはどうすればよいでしょうか?

私は使っていたnewtxmathオプションlibertine (Linux Libertine)でpdflatex エンジンを以前使用していたが、unicode-mathxelatex

newtxmath素敵なオープンイタリックを提供してくれた unicode-math数学ではこれが好まれる形式であるようです。とでそれを得る方法がわかりません。Libertinus 数学フォント(Linux Libertineに最適な選択)。私は掘り下げましたnewtxmath.styしかし、パッケージがオープンを得るために何をするのかについての有用な情報は見つけられなかった。 Linux Libertine グリフ テーブルを検索しましたが、見つかりませんでした。


pdflatex希望するオープンMWE :

\documentclass{standalone}

\usepackage[libertine]{newtxmath}

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

オープンg


xelatex/ unicode-mathMWE(通常) :

\documentclass{standalone}

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

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

醜いg


私が考えられる解決策は次のとおりです:

  • newxmathオープンGがどのように作成されるかを分析し、それを使用する
  • 開いたgをベクターグラフィックスとしてインポートし、可能であれば数式文字にします
  • Linux Libertine のオープン g (存在する場合) のみを Libertinus と一緒に使用します。

答え1

私の意見では、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

newtxmathシンボルを宣言することで、open g を使用できます。ただし、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}

ここに画像の説明を入力してください

関連情報