我正在尝试排版一份旧的数学试卷,其中方程式中使用文本数字代替数学数字。例如
但是,默认情况下,数学环境中mathastext
会从包中加载数学数字字体baskervillef
。如何在数学环境中将默认数学数字字体更改为文本数字字体?有没有不需要的解决方案XeLaTeX
?
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[p,osf]{baskervillef}
\usepackage[basic, frenchmath]{mathastext}
\begin{document}
Text digit: $i \neq n + \text{1}$
Math digit: $i \neq n + 1$
\end{document}
答案1
您可以将文本字体声明为数学符号字体,然后设置要使用它的数字
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[p,osf]{baskervillef}
\DeclareSymbolFont{digits}{T1}{BaskervilleF-OsF}{m}{n}
\DeclareMathSymbol{0}{\mathalpha}{digits}{`0}
\DeclareMathSymbol{1}{\mathalpha}{digits}{`1}
\DeclareMathSymbol{2}{\mathalpha}{digits}{`2}
\DeclareMathSymbol{3}{\mathalpha}{digits}{`3}
\DeclareMathSymbol{4}{\mathalpha}{digits}{`4}
\DeclareMathSymbol{5}{\mathalpha}{digits}{`5}
\DeclareMathSymbol{6}{\mathalpha}{digits}{`6}
\DeclareMathSymbol{7}{\mathalpha}{digits}{`7}
\DeclareMathSymbol{8}{\mathalpha}{digits}{`8}
\DeclareMathSymbol{9}{\mathalpha}{digits}{`9}
\usepackage{amsmath}
\begin{document}
Text digit: $i \neq n + \text{1}$
Math digit: $i \neq n + 1$
\end{document}