如何在LaTeX中更改文档字体?

370

如何将整个文档的字体更改为无衬线字体(或其他任何字体)?

4个回答

251

我通过Vincent答案中提供的链接找到了解决方案。

 \renewcommand{\familydefault}{\sfdefault}

这会将默认的字体族设置为 sans-serif。


2
所使用的字体是Helvetica,如http://www.stat.berkeley.edu/~paciorek/computingTips/Basic_font_guidance_Latex.html中所述。 - nalply
7
在我的系统上,字体是Computer Modern Sans,绝对不是Helvetica(顺便说一下,Helvetica并不免费提供)。你引用的来源是错误的。 - Midgard
14
如果您想要特定的字体而不是该字体系列中的随机字体,应该怎么做? - aquirdturtle
3
除了 sfdefault 之外,根据 此链接,还有 rmdefault(衬线字体)和 ttdefault(等宽字体)等其他选项。 - Matthias Braun
部分工作。 \textsc{} 具有衬线; 在我的使用情况下,该包是 RevTeX。 - user5248982

106

从另一个角度来看,我建议使用XeTeXLuaTex系统。它们允许您访问系统字体(TrueType、OpenType等)并设置字体功能。在典型的LaTeX文档中,您只需要在页眉中包含以下内容:

\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
\setmainfont{Times}
\setmonofont{Lucida Sans Typewriter}

能够使用\setmainfont\setmonofont是由于fontspec包。选择多种字体特性的能力超出了我的专业知识,但我建议查找一些示例并查看是否适合您的需求。

只要不要忘记使用相应的LaTeX编译器(xelatex或lualatex)替换您喜欢的编译器即可。


46

如第二个回答所述,TeX文档中的大多数"设计"决策都得到了经过深入研究的可用性研究的支持,因此更改它们应该谨慎对待。然而,将计算机现代字体替换为Times(也是一种衬线字体)相对较为常见。

尝试使用\usepackage{times}


18
“well researched usability studies” 是什么意思?你是不是只是指经过深思熟虑的研究?我无法想象学术期刊中存在针对具体 LaTeX 默认设置的同行评议研究。 - Praxeolitic
2
@Praxeolitic 在我离开那个办公室之后,你才问我这个问题。那个办公室里有《TeXbook》和Lamport的《LaTeX:文档准备系统》的副本。我认为答案在Lamport的书里,但我不能发誓。 - dmckee --- ex-moderator kitten
2
“Most”。默认字体太难读了,我更喜欢一些轻盈的字体,字形不那么复杂。 - Xeverous
6
不得不说,我认为默认的计算机现代字体看起来很难看。(向Donald Knuth道歉。)你的看法可能不同。 - Leon Avery
1
我认为衬线字体不太适合阅读。实际上,可能有相反的研究结果。衬线对于阅读来说并不是很好。在我看来。 - user12582392

43

这篇文章可能对更改字体有所帮助。

以下为文章内容:

以下示例演示了更改字体属性的命令:

  \fontencoding{T1}
  \fontfamily{garamond}
  \fontseries{m}
  \fontshape{it}
  \fontsize{12}{15}
  \selectfont

这一系列命令将当前的字体设置为T1编码方案下中等加粗斜体的12pt Garamond字形,行距为15pt。而\selectfont命令则会让LaTeX查找相应属性的度量值。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接