我想运行\usepackage{times}
但保持texttt
字体不变(默认的 CM Typewriter Text)。我该怎么做?
答案1
另一种方法是使用
\usepackage{times} % Or tgtermes, newtxtext, etc.
\renewcommand\ttdefault{cmtt}
在 LuaLaTeX 或 XeLaTeX 中,你可以执行以下操作:
\usepackage{unicode-math}
\defaultfontfeatures{Scale = MatchLowercase, Ligatures=TeX}
\setmainfont{TeX Gyre Termes}[Scale=1.0]
\setmonofont{Latin Modern Mono} % Or NewCMMono, CMU Typewriter Text, etc.
\setmathfont{TeX Gyre Termes Math}
% Also set the sans-serif font if desired.
答案2
当前(2020/03/25)版本的次该包仅包含 32 行代码,其中四分之三 [!] 是注释行。八行非注释行如下:
\ProvidesPackage{times}%
[2020/03/25 PSNFSS-v9.3
(SPQR)
]
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\ttdefault}{pcr}
\endinput
如果你想要做的只是将主文本(“roman”或“serif”)字体切换为 Times Roman 克隆,你可以执行
\renewcommand{\rmdefault}{ptm}
在文档的序言中。此外,如果你还想将文档的主要无衬线字体切换为 Helvetica,我实际上会不是建议您\renewcommand{\sfdefault}{phv}
在文档的序言中运行,因为 Times Roman 和 Helvetica 的 x 高度非常不同。我的建议是运行
\usepackage[scaled=0.88]{helvet}
而是为了让两种字体的 x 高度彼此一致。
但实际上,我会并不真地建议您采用上述方法,主要是因为它没有解决如何设置与 Times Roman 文本字体在视觉上兼容的数学字体的问题。相反,我建议您运行
\usepackage[nott,helvratio=0.88]{newtxtext}
\usepackage{newtxmath}
在您的序言中。该nott
选项指示包不切换到新的打字机字体。此外,如果您这样做不是想要用 Helvetica 替换默认的 sans-serif 字体,只需将选项替换helvratio=0.88
为nohelv
。