我classico
每天都会用到它,还有\usepackage[EULERGREEK]{sansmath}\sansmath
公式。我的问题是:我不喜欢 classico 的“等号”形状。我觉得它太窄了,例如在 中\Longrightarrow
,但在其他地方也相当窄。(平均能量损失在 pastebin 上)
在对 tex.sx 进行了大量研究之后(例如从不同字体导入单个符号,等等)我能够说服数学模式保留现代计算机的等号。
\DeclareSymbolFont{mysymbols}{T1}{cmr}{m}{n}
\DeclareMathSymbol{=}{\mathrel}{mysymbols}{`=}
我不知道这是否正确的做法但我觉得它已经足够好了
我也想更改文本模式下等号的字体。可以吗?
我尝试玩更多我不理解的东西(比如 catcodes、cf平均能量损失),但却一无所获。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[sfdefault]{classico}
\usepackage[EULERGREEK]{sansmath}\sansmath
\DeclareSymbolFont{mysymbols}{T1}{cmr}{m}{n}
\DeclareMathSymbol{=}{\mathrel}{mysymbols}{`=}
% \catcode`==13 \def ={\ensuremath{=}}
\begin{document}
\begin{center}
text: 1 2 3 = 4 5 6
\end{center}
\begin{center}
math: $ 1 2 3 = 4 5 6$
\end{center}
\begin{center}
arrow: $\Longrightarrow$
\end{center}
\end{document}
答案1
如果使用 LuaLaTeX 或 XeLaTeX 进行编译,这里有一种fontspec
方法可以在文本模式下以单独的字体获取等号。
\documentclass{article}
\usepackage{lmodern}
\renewcommand*\familydefault{\sfdefault} % Use sans as base font
\usepackage{fontspec}
\newfontfamily{\mymathfont}{Latin Modern Math} % Family for math symbols
\newcommand{\mymath}[1]{\bgroup\mymathfont #1\egroup} % Command to apply family
\newcommand{\EQ}{\mymath{=}} % Specific command for equals sign
\begin{document}
text: 1 2 3 \EQ\ 4 5 6
\end{document}