
我是 TeX 新用戶,想知道是否有任何方法可以在美元符號之間鍵入數學表達式時保留我的主要字體(Day Roman)。這是一個例子,我希望我的字體看起來像底部的三個點 A、B 和 C,而不是第一行。我找到了一篇具有我想要使用的樣式的論文,請參見底部圖片。
有什麼方法可以阻止美元符號改變字體嗎?這是我的序言(如果內容混亂、不需要和/或重疊,我深表歉意):
\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{ebgaramond,ebgaramond-maths}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\setmainfont{Dayrom.ttf}
\begin{document}
\textbf{1. }\text{Test 2}\\
$$A = (1, 1, 1), B = (2, 2, 2), C = (3, 3, 3)$$.
\centerline{$A =$ $($1, 1, 1$)$, $B =$ $($2, 2, 2$)$, $C =$ $($3, 3, 3$)$.}
\end{document}
正如您所看到的,我必須避免在數字周圍使用美元符號,因為它會改變字體。
我已經下載了 Day Roman 字體並將其附加到我的文件中。我使用 XeLaTeX 作為編譯器。
提前致謝。
答案1
您可以將字體聲明為數學字體並聲明數字使用它:
\documentclass[10pt,a4paper]{article}
% not in xetex \usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{ebgaramond,ebgaramond-maths}
% not in xetex \usepackage[T1]{fontenc}
\usepackage{fontspec}
\setmainfont[NFSSFamily=dayrom]{Comic Sans MS}% I don't have this \setmainfont{Dayrom.ttf}
\DeclareSymbolFont{digits}{TU}{dayrom}{m}{n}
\AtBeginDocument{
\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}
}
\begin{document}
\showoutput
\textbf{1. }\text{Test 2}% never before a math display\\
\[A = (1, 1, 1), B = (2, 2, 2), C = (3, 3, 3) \text{.}\]
\end{document}