使用不同的正文和数学字体时排版单位(如 N/m)的正确方法

使用不同的正文和数学字体时排版单位(如 N/m)的正确方法

我正在编写一个文档,该文档使用times正文,数学字体是标准 Latex 数学字体(Computer modern)。我正在使用反斜杠的形式输入 N/m 等单位。我读过有关siunitx帮助排版单位等的软件包。当我使用时siunitx不带任何选项,它会si{N/m}以 Computer Modern 字体打印。但我想要字体中的字母times。所以我使用\sisetup{detect-all = true, detect-family = true}

但是当我输入时,si{N/m}我得到的输出与只输入 相同N/m。我想这是预料之中的吧?我肯定想使用反斜杠来写这个单位,也就是说,我不想写类似 的东西Nm^{-1}。我做对了吗?我假设该\si命令将有助于实现单位和反斜杠的“正确”间距。(如果存在像 N/m 这样的单位的“正确”间距的话)。以下是输出的示例。

在此处输入图片描述

我的问题是我使用得\si正确吗?

\documentclass{article}
\usepackage{times}
\usepackage{siunitx}
\sisetup{detect-all = true, detect-family = true}
\begin{document}
\si{N/m} or N/m
\end{document}

答案1

是的,您通过提供文字输入正确地使用了 siunitx,但是使用单元宏将允许您使用该包的更多功能。

对于简单单位,如您的示例一样,使用 siunitx 宏产生的输出与直接输入字符相同。

\si[detect-all]{N/m} is the same as N/m.

在此处输入图片描述

当您使用复杂的单元时,该包的强大功能会变得更加明显,因为正确的排版很快就会变得很困难。

\si[detect-all]{N/m^2} versus N/m$^2$. % The second ^2 uses math font instead of text font.

在此处输入图片描述

siunitx 的另一个优势是它确保所有单位(和数字)的排版一致。正如您已经发现的那样,您可以设置单位是否适应周围的字体或始终使用数学字体设置:

\si{N/m} versus $\si{N/m}$. % Always use math font \\  
\sisetup{detect-all}
\si{N/m} versus $\si{N/m}$. % Adapts to math or text font

在此处输入图片描述

您还可以使用单位宏输入,这为您提供了更大的灵活性,因为您可以使用全局选项来影响单位排版。

\sisetup{per-mode = reciprocal} % default setting
\si{N/m} versus \si{\newton\per\meter}\\
\sisetup{per-mode = symbol}
\si{N/m} versus \si{\newton\per\meter}

在此处输入图片描述

Sinuitx 真正发挥作用的地方在于,当你使用其他宏时,例如\SI确保数字和单位通过细的、不间断的空格正确连接,

\SI{5}{N/m}\\
5 \si{N/m}

在此处输入图片描述

并且\SIrange\SIlist自动格式化范围和列表:

\SIrange{0}{5}{N/m}\\
\SIlist{0;1;2;3;4;5}{N/m}

在此处输入图片描述

相关内容