stmaryrd と boldsymbol: 警告を回避する

stmaryrd と boldsymbol: 警告を回避する

ここに 2 つの例を示します。

1

\documentclass[a4paper,10pt]{article}
\usepackage{amsmath}
\begin{document}
    $\boldsymbol x$
\end{document}

2

\documentclass[a4paper,10pt]{article}
\usepackage{amsmath}
\usepackage{stmaryrd}
\begin{document}
    $\boldsymbol x$
\end{document}

私の知る限り、 でコンパイルすると、両方のバージョンで同じ出力が生成されますpdflatex。太字斜体の「x」が 1 つあります。

ただし、ドキュメント 2 をコンパイルすると、次の警告も表示されます。

LaTeX Font Warning: Font shape `U/stmry/b/n' undefined
(Font)              using `U/stmry/m/n' instead on input line ….

なぜこの警告が表示されるのでしょうか(これはLatexがない正しいフォントを見つけることができましたが、出力は正しいですか?

警告を回避するにはどうすればよいですか? ドキュメントには次の両方が必要です。

  • 大胆な通常の数学記号のバージョン(なくても簡単に作成できるものstmaryrd
  • 通常一部のシンボルのバージョンは、stmaryrd

答え1

内部的には\boldsymbol効果的に使用される\boldmathため、実際に太字で使用されている記号はすべて太字の数式設定全体となり、この警告が表示されます。

silenceパッケージは、さまざまなLaTeXメッセージをフィルタリングするためのインターフェースを提供するので、これらをフィルタリングしたり、この場合は、stmaryrd用途

\SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n}
                                     %%%

太字の数式バージョンでは太字フォントを使用する必要があることを宣言します (存在しないため宣言されることはありません)。

したがって、別の方法としては、太字バージョンでは通常のフォントを使用するように LaTeX に指示することです。

これについては警告は出ません:

\documentclass[a4paper,10pt]{article}
\usepackage{amsmath}

\usepackage{stmaryrd}
\SetSymbolFont{stmry}{bold}{U}{stmry}{m}{n}
                                     %%%
\begin{document}


aa
    $\boldsymbol{x}$
\end{document}

関連情報