\mathrm
重新定义数学模式字体命令(例如和)的最干净的方法是什么\mathit
?
我希望其他一切不受影响;例如,也许我喜欢使用它mathptmx
并且我想保留它的\mathnormal
,但我想更改\mathrm
并mathit
使用不同的字体。
\documentclass{article}
\usepackage{mathptmx}
\begin{document}
Some text.
Some formula: \(abc = de/f \quad[\mathrm{var}, \mathit{val}]\)
\(\mathnormal{abc = de/f}\)
var, \textit{val}
\(\mathrm{var}, \mathit{val}\)
% Bitstream Charter
{\fontfamily{bch}\fontseries{m}\fontshape{n}\selectfont var,
\fontfamily{bch}\fontseries{m}\fontshape{it}\selectfont val}
% Linux Biolinum
{\fontfamily{LinuxBiolinumT-OsF}\fontseries{m}\fontshape{n}\selectfont var,
\fontfamily{LinuxBiolinumT-OsF}\fontseries{m}\fontshape{it}\selectfont val}
% Linux Libertine
{\fontfamily{LinuxLibertineT-OsF}\fontseries{m}\fontshape{n}\selectfont var,
\fontfamily{LinuxLibertineT-OsF}\fontseries{m}\fontshape{it}\selectfont val}
\end{document}
答案1
只需重新定义宏\mathrm
并\mathit
使用不同的字体:界面是
\DeclareMathAlphabet{<encoding>}{<family>}{<series>}{<shape>}
您还可以补充不同数学版本的字体:也可以说
\SetMathAlphabet{bold}{<encoding>}{<family>}{<series>}{<shape>}
\boldmath
用于定义在(或)上下文中使用的字体\mathversion{bold}
。
下面是一个例子。但请注意,使用 Charter 表示\mathrm
和\mathit
是印刷上的错误。以下是我的说法的视觉证据。
\documentclass{article}
\usepackage{mathptmx}
\DeclareMathAlphabet{\mathrm}{OT1}{bch}{m}{n}
\DeclareMathAlphabet{\mathit}{OT1}{bch}{m}{it}
\begin{document}
Some text.
Some formula: \(abc = de/f \quad[\mathrm{var}, \mathit{val}]\)
Some formula: \(\mathit{abc}=\mathit{de}/\mathit{f}\)
\end{document}
相反,\DeclareMathAlphabet
可以定义一个不会吞噬数学家族的替代品:
\usepackage{amsmath}
\newcommand{\mathcharter}[1][\encodingdefault]{%
\text{\usefont{#1}{bch}{m}{n}#2}%
}
并将其用作
\mathcharter{abc}
甚至
\mathcharter[T1]{l'Hôpital}