Beamer/Metropolis の演算子フォント

Beamer/Metropolis の演算子フォント

Beamerのメトロポリステーマを使用すると、テキストと数式がFira Sansで表示されます。を除外する数学演算子の場合。次の MWE を LuaTeX を使用してコンパイルします。

\documentclass{beamer}

\usetheme{metropolis}

\begin{document}

  \begin{frame}
    Ordinary text.
    \[ a^2 + b^2 = \sin^2(x) - \mathsf{y} + \mathrm{z}  \]
  \end{frame}

\end{document}

私の場合、結果として、a、b、2、x は Fira Sans Light Italic に設定され、y は Fira Sans Light に設定されますが、sin は (おそらく) Latin Modern の sans フォントに設定されます。(z も Latin Modern ですが、これは Beamer の想定される動作です。)

\usetheme{metropolis}当然ながら、次のように置き換えても同じ結果が得られます。

\usepackage[no-math]{fontspec}
\setsansfont[ItalicFont={Fira Sans Light Italic},
  BoldFont={Fira Sans},
  BoldItalicFont={Fira Sans Italic}]%
  {Fira Sans Light}

これは、ビーマーが数学フォントの一部をテキストフォントに合わせるためにパッチを当てていることと関係があると思います(この前の質問)。ただし、フォント システムを十分に理解していないため、これを変更することはできません。

ありました以前にも同様の質問がありましたfontspecですが、 を使用するときにその答えをどのように適用すればよいのか、あるいはそれが可能かどうかもわかりません。

演算子フォントをアップライト/サンセリフ数学フォント (Fira Sans Light など) に合わせて変更する方法はありますか?

答え1

おそらく、演算子のフォントを変更すると回避策になる可能性があります。

% !TeX TS-program = xelatex
\documentclass{beamer}

\usetheme{metropolis}

\DeclareSymbolFont{sfoperators}{OT1}{FiraSans-LF}{l}{n}
\makeatletter
    \renewcommand{\operator@font}{\mathgroup\symsfoperators}
\makeatother

\begin{document}

  \begin{frame}
    Ordinary text.
    \[ a^2 + b^2 = \sin^2(x) - \mathsf{y} + \mathrm{z}  \]
  \end{frame}

\end{document}

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

あるいは、テーマmolochのより現代的なフォークであるテーマを使用することもできますmetropolismolochフォントは変更されないため、デフォルトで一貫したセット (コンピューターのモダンなサンセリフ) が取得されます。

\documentclass{beamer}

\usetheme{moloch}% modern fork of the metropolis theme

\begin{document}

  \begin{frame}
    Ordinary text.
    \[ a^2 + b^2 = \sin^2(x) - \mathsf{y} + \mathrm{z}  \]
  \end{frame}

\end{document}

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

関連情報