bm パッケージ変更シンボルの使用

bm パッケージ変更シンボルの使用

次のコード

\documentclass{amsart}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{eulerpx,bm}

\begin{document}

$a<b\quad\bm{a<b}$

\end{document}

次の出力を提供します。

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

たとえば、代わりに を使用すると、不等号は変更されませんnewpxmath。問題は確かにパッケージにあるようですeulerpx。どうすれば解決できますか?

答え1

これが何を壊すのかはわかりませんが、シンボル フォントを再定義し、<内でアクティブにしました\bm

\begingroup...\endgroupcatcode の変更を分離しますが、 内の二項演算子は\bmの外側にあるもの\bm(MWE では として表示)を参照できますy\bm{-y}

\documentclass{amsart}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{eulerpx,bm}
\SetSymbolFont{letters}{bold}    {U}{zeur}{m}{n}
\let\svbm\bm
\renewcommand\bm{\begingroup\catcode`<=\active \xbm}
\newcommand\xbm[1]{\svbm{#1}\endgroup}
\let\svlt<
{\catcode`<=\active \gdef<{\mathop{\mathrm{\svlt}}}}
\begin{document}
$a<b\quad\bm{a<b}\quad y\bm{-y}$
\end{document}

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

このアプローチを と<の両方の>関係に適用するには、少しだけ追加作業が必要です。

\documentclass{amsart}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{eulerpx,bm}
\SetSymbolFont{letters}{bold}    {U}{zeur}{m}{n}
\let\svbm\bm
\renewcommand\bm{\begingroup%
  \catcode`>=\active %
  \catcode`<=\active %
  \xbm}
\newcommand\xbm[1]{\svbm{#1}\endgroup}
\let\svlt<
\let\svgt>
{\catcode`>=\active 
\gdef>{\mathop{\mathrm{\svgt}}}
\catcode`<=\active 
\gdef<{\mathop{\mathrm{\svlt}}}}
\begin{document}
$a<b\quad\bm{a<>b}\quad y\bm{-y}$
\end{document}

関連情報