![使用 parse-numbers=false 时 siunitx 不一致](https://linux22.com/image/320060/%E4%BD%BF%E7%94%A8%20parse-numbers%3Dfalse%20%E6%97%B6%20siunitx%20%E4%B8%8D%E4%B8%80%E8%87%B4.png)
在下面的 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}