使用 parse-numbers=false 时 siunitx 不一致

使用 parse-numbers=false 时 siunitx 不一致

在下面的 MWE 中,我期望即使有选项parse-numbers=false。我也会f以数学模式而不是常规文本编写。

\documentclass{article}

\usepackage{siunitx}
\sisetup{detect-all}

\begin{document}

\noindent
using siunitx (normal): $\SI[parse-numbers=false]{f \pm \Delta}{\Hz}$\\
using siunitx (hacked): $\SI[parse-numbers=false]{\text{$f$} \pm \Delta}{\Hz}$\\
math: $f$\\
roman: f

\end{document}

答案1

虽然该siunitx包大大简化了数字、角度、单位等的排版和间距,但这个问题演示了如何\SI{}{}在第一个参数中期望数字(以及使用单独函数的原因\si{})。在这种情况下,我认为使用仅单位命令\si{}并明确定义间距\,是更好的方法。结果应该是相同的。

\documentclass{article}
\usepackage{siunitx}
\sisetup{detect-all}
\begin{document}
\noindent
$\SI[parse-numbers=false]{f \pm \Delta}{\Hz}$\\
$\SI[parse-numbers=false]{\text{$f$} \pm \Delta}{\Hz}$\\
$f \pm \Delta\,\si{\Hz}$\\
math: $f$\\
roman: f
\end{document}

在此处输入图片描述

答案2

我更喜欢使用\SI[parse-numbers=false]{\text{$f \pm \Delta$}}{\Hz}

\documentclass{article}
\usepackage{siunitx}
\sisetup{detect-all}
\begin{document}
\noindent
$\SI[parse-numbers=false]{f \pm \Delta}{\Hz}$\\
\SI[parse-numbers=false]{\text{$f \pm \Delta$}}{\Hz}\\ % <- my solution
math: $f$\\
text: f
\end{document}

相关内容