我创建了两个自定义命令,以便可以使用 siunitx 包轻松获得格式正确的微米和纳米后缀,如下所示:
\newcommand{\nm}{\si{\nano\meter} }
\newcommand{\um}{\si{\micro\meter} }
通常情况下,在正文中使用 \si 命令时,它会正确地合并空格,但使用自定义命令时,我必须在命令末尾添加一个空格。因为当我在任何文本中使用它时,它不会自动执行此操作。这通常有效,但当我使用该命令结束句子或将其放在逗号之前时则无效。也许我忽略了某种可以解决这个问题的命令结构?
答案1
虽然由于某种原因它不是标准设置,但人们可以创建这样的独立单元:
\documentclass{article}
\usepackage[free-standing-units, use-xspace]{siunitx}
\begin{document}
The distance~$d$ is given in \nm, so \nm are an SI unit of distance.
\end{document}
答案2
这xspace
包旨在用于此类用途:它“巧妙地”在宏的末尾添加一个空格(即,当宏后面跟着标点符号时不会添加空格)。
您可以这样使用它:
\newcommand{\nm}{\si{\nano\meter}\xspace}
\documentclass{scrartcl}
\usepackage{siunitx}
\usepackage{xspace}
\newcommand{\nm}{\si{\nano\meter}\xspace}
\begin{document}
You can say that 13\nm is shorter than 17\nm.
\end{document}