O seguinte código
\documentclass{amsart}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{eulerpx,bm}
\begin{document}
$a<b\quad\bm{a<b}$
\end{document}
Fornece a seguinte saída:
O símbolo de desigualdade não muda quando eu uso, digamos, newpxmath
em seu lugar. O problema parece estar realmente no eulerpx
pacote. como isso pode ser resolvido?
Responder1
Não tenho certeza do que tudo isso quebra, mas redefini uma fonte de símbolo e ativei <
dentro de \bm
.
O \begingroup...\endgroup
isola a mudança do catcode, ao mesmo tempo que permite que os operadores binários dentro do \bm
vejam o que está fora do \bm
, mostrado no MWE como 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}
Para aplicar esta abordagem a ambas <
as >
relações é necessário apenas um pouco mais:
\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}