siunitx 错误:指数“0”无法转换为符号(siunitx)前缀

siunitx 错误:指数“0”无法转换为符号(siunitx)前缀

为了千瓦时,有些数字无法通过 呈现exponent-to-prefix。显然所有这些都应该使用 Wh(不带前缀):

\documentclass{article}

\usepackage{siunitx}
\sisetup{
    exponent-to-prefix = true,
    round-mode = places,
    round-precision = 3,
    scientific-notation = engineering,
}

\begin{document}

\SI{1000}{\kWh} % Works
\SI{100}{\kWh} % Works
\SI{10}{\kWh} % Works
\SI{1}{\kWh} % Works

\SI{0.1}{\kWh} % Fails
\SI{0.01}{\kWh} % Fails
\SI{0.001}{\kWh} % Fails

\SI{0.0001}{\kWh} % Works
\SI{0.00001}{\kWh} % Works
\SI{0.000001}{\kWh} % Works
\SI{0.0000001}{\kWh} % Works

\end{document}

我通过编程生成数字,因此我事先并不知道它们属于哪个范围。有没有办法让exponent-to-prefix所有星座都适用?

答案1

版本 3siunitx应该可以很好地处理您的输入。要处理 v2,您最好创建一个“前缀”来处理该问题

\DeclareSIPrefix{\noop}{}{0}

相关内容