我使用 baskerville 作为文本字体,使用 mtpro2 作为数学字体。但文本和数学中的数字不同。查看 mtpro2 文档后,我找不到在数学模式下强制文本数字的选项。有人知道解决方法吗?
答案1
序言中的以下代码应该可以完成您想要的操作:
\DeclareMathSymbol{0}{\mathalpha}{operators}{`0}
\DeclareMathSymbol{1}{\mathalpha}{operators}{`1}
\DeclareMathSymbol{2}{\mathalpha}{operators}{`2}
\DeclareMathSymbol{3}{\mathalpha}{operators}{`3}
\DeclareMathSymbol{4}{\mathalpha}{operators}{`4}
\DeclareMathSymbol{5}{\mathalpha}{operators}{`5}
\DeclareMathSymbol{6}{\mathalpha}{operators}{`6}
\DeclareMathSymbol{7}{\mathalpha}{operators}{`7}
\DeclareMathSymbol{8}{\mathalpha}{operators}{`8}
\DeclareMathSymbol{9}{\mathalpha}{operators}{`9}
这应该在定义文本字体并加载后进行MTPRO2
答案2
mtpro2
--“MathTime Pro 2”的缩写--提供数学模式仅限字体。据我所知,mtpro2
仅提供“衬线”(又称“标题”)数字,而不提供“旧式”(或“文本样式”)数字。
您提到您正在使用 Baskerville文本字体:它是否具有文本样式/旧样式数字?文本样式数字可能不应该用于数学表达式,尤其是那些涉及下标和指数(上标)的数学表达式,因为其中一些数字的上升和下降可能会引起混淆。(尝试使用文本样式数字排版$6^{2^4}$
vs $6^{24}$
,并且至少不会对输出感到困惑。)
仅当文档包含大量数学内容时,在页码和章节划分等地方使用文本样式数字才是无害的。
有些软件包,例如mathpazo
,提供了选项osf
。然而,它们通常只适用于文本模式mathpazo
数字。包中的数学模式数字全部采用“衬线”或“标题”样式,这可能并非偶然。