我正在编写一个文档,该文档使用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}