设置包含数学的无衬线文档(2017 年,使用 pdftex)

设置包含数学的无衬线文档(2017 年,使用 pdftex)

我尝试建立一个整个文档使用无衬线字体,包括数学。目前我想使用pdftex

我搜索了相关的问题和答案 - 这是我找到的:

kpfonts包裹

这是一编辑从 2017-06-09 开始。我kpfonts偶然发现它们,它们看起来很有前途。

\documentclass[preview]{standalone}

% https://www.ctan.org/pkg/kpfonts
% Complex package -- read the documentation!
\usepackage[sfmath]{kpfonts}
\usepackage{mathtools}
\renewcommand\familydefault{\sfdefault}

\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

在此处输入图片描述

cmbright包裹

\documentclass[preview]{standalone}

\usepackage{cmbright}
\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n}

\usepackage{mathtools}
\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

在此处输入图片描述

arevtextarevmath(或简称arev)包

\documentclass[preview]{standalone}

\usepackage{arev}
% Suggested from Mico
\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n}

\usepackage{mathtools}
\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

没有\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n} 在此处输入图片描述

\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n} 在此处输入图片描述

sansmathfontshelvet包装

\documentclass[preview]{standalone}

\usepackage{sansmathfonts}
\usepackage[scaled=0.95]{helvet}
\renewcommand{\rmdefault}{\sfdefault}

\usepackage{mathtools}
\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

在此处输入图片描述

newtxsf包裹

以下代码取自新txsf文档并根据上面的代码示例进行调整。

\documentclass[preview]{standalone}

\usepackage[sfdefault,scaled=.85]{FiraSans}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[varqu,varl]{zi4}% inconsolata typewriter
\usepackage{amsmath,amsthm}
\usepackage[cmintegrals]{newtxsf}

\usepackage{mathtools}
\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

由于文件中出现错误,我无法运行代码miktex-makemf.log。我已经刷新了 FNDB (MiKTeX)。错误不属于问题的一部分尽管。

也许有人可以为我添加代码的输出。

在此处输入图片描述

2017-03-21 02:02:13,987+0100 FATAL miktex-makemf - 找不到 txsys 源文件。

在关注了乌尔丽克·菲舍尔upmap在Windows的命令窗口上运行),错误消失了!

在此处输入图片描述

sansmathhelvet包装

sansmath似乎不是一个活动的包(这只是一个假设——仅此而已)。我只发现2003-08-13,版本 1.0在 CTAN 上。

\documentclass[preview]{standalone}

\usepackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{sansmath} 
\sansmath 

\usepackage{mathtools}
\begin{document}
Text
$\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2}f(x)\,\text{d}x
$
Text
\end{document}

在此处输入图片描述

更多看似相关的软件包

其他相关信息

实际问题

  1. 目前推荐的设置完整无衬线文档的方法是什么?我的目标是寻求一种被认为是最先进的解决方案,并且(如果可能的话)拥有一套完整的符号和字体版本(小写字母等)。
  2. 字体包的作用是什么sansmathfonts?它们是否“只是”将现有的字体(或单个字符/符号)放在方便的包中(所以如果所有东西都合适,那只是“运气”),还是作者创建了新字体?

背景--我为什么要这样做

我在一条评论中(Mico)被要求解释我想要用无衬线字体做什么。

  • 我帮助一位刚刚开始当老师的朋友。
  • 如果我们创建在任何类型的投影仪上使用的文档,那么衬线字体有时会导致可读性问题。
  • 我指的是文档,例如投影仪演示文稿或独立图表。
  • 我在下面附上了一张独立图表。图片的分辨率相同。
  • 所以就是不是用于书籍、文章或论文。

采用 Serif 字体的标准解决方案(未加载字体包 - 我认为是 Computer Modern) 在此处输入图片描述


无衬线版本 - 使用avec上述 Mico 推荐的包方法 在此处输入图片描述

答案1

如果文档采用beamer演示文稿的形式,我建议您(或者您正在帮助的同事)做两件事:

  • \usefonttheme{professionalfonts}发布序言中的指令,并

  • 加载arev包,该包加载arevtextarevmath包。

根据我的经验,arev文本和数学字体都比相应的 CM Sans 字体颜色更深,间距更宽。我认为这两个功能对于编写beamer基于 的演示文稿来说都是显著的优势。对于演讲新手来说,一个长期存在的、几乎致命的诱惑就是试图在任何一张幻灯片中塞入太多的材料。一种间距稍微大一些的字体在这方面非常有利,因此很难将太多的材料塞进幻灯片中。:-)

我喜欢arev数学字体的另一个原因是——但这显然只是个人喜好——数学模式下的很多字母字形实际上看起来是“斜体”而不仅仅是“倾斜”。如果将\textit{x}(纯粹倾斜)与(更“斜体”,而不仅仅是$x$倾斜)进行比较,这一点就很明显了。在数学模式下具有这种明显“斜体”外观的其他字形是a、、、、、和。不过,重复f一下我之前说过的i话:这显然只是个人喜好;您的喜好可能完全不同。luvw

完整的 MWE:

在此处输入图片描述

\documentclass{beamer}
\usefonttheme{professionalfonts}
\usepackage{arev}
\begin{document}
\begin{frame}
$\displaystyle abc + \sum_{k=1}^n \int_0^k \sqrt{2} f(x)\,\text{d}x$

\medskip\noindent
\begin{tabular}{@{}lll}
text-mode: & \emph{bcdeghjkmnopqrstyz} & \emph{afiluvwx} \\
math-mode: & $bcdeghjkmnopqrstyz$      & $afiluvwx$
\end{tabular}
\end{frame}
\end{document}

答案2

正如评论中所述:这仅供参考,并非针对pdflatex特定问题的真正解决方案。以下解决方案xelatex仅适用于特定问题,因为它使用了mathspec,它允许您使用任何系统范围内安装的字体并调整数学字体的许多方面(包括\mathbb\mathcal等的特定字体\mathfrak以及根据字符组“拉丁”、“希腊”、“数字”进行的选择)。

这是获取 sans 纯文本文档的非常简单的方法,因为您可以根据需要使用多种字体覆盖整个 unicode 区域(大多数 sans 字体都缺少书法或 fraktur 字符)。在下面的示例中,我使用了“Linux Biolinum”字体。

生物素

\documentclass{article}

\usepackage{mathspec}
\setallmainfonts{Linux Biolinum G}
\setallsansfonts{Linux Biolinum G}
\setallmonofonts{Linux Biolinum G}
\setmathsfont(Digits,Latin,Greek)[ItalicFont=Linux Biolinum G Italic,%
    BoldFont=Linux Biolinum G Bold]{Linux Biolinum G}%

\begin{document}

This is a test.

Text
\(\displaystyle
abc+\sum_{k=1}^{n}\int_{0}^{k}\sqrt{2} f(x)\,\mathrm{d}x
\)
Text\\

\(\alpha + \mathcal{X}\)

\end{document}

相关内容