带有前置单元的 SIrange

带有前置单元的 SIrange

我正在尝试使用该siunitx包来排版货币范围(例如 1 亿美元到 3 亿美元)。单个值可以排版为

\SI{100}[$]{billion}

正确给出

1000亿美元

\SIrange{100}{300}[\$]{million}

另一方面,给出

1亿至3亿美元

最合适的排版方法是什么?我是否应该\$在每个数字前添加前置单位 ( )?

答案1

我认为目前无法将单元前项目传递给\SIrange。如果您决定采用最后一句中提到的路线,您还需要设置选项parse-numbers=false,即写入

\SIrange[parse-numbers=false]{\$100}{\$300}{million}. 

但是,输出结果“1 亿美元到 3 亿美元”并不是很地道(至少对于英语来说不是)。我敢肯定,如果您使用单词写出这个短语,没有人会感到困惑,即

$100 to $300 million

或者更好的是(IMNSHO),

100 to 300 million dollars

当然,如果对哪个国家的货币单位——美国、加拿大、澳大利亚、新西兰、香港、新加坡……、津巴布韦[!]——被提及时,一定要消除这种潜在的歧义。

相关内容