![数学模式下括号和逗号中的负数](https://linux22.com/image/458719/%E6%95%B0%E5%AD%A6%E6%A8%A1%E5%BC%8F%E4%B8%8B%E6%8B%AC%E5%8F%B7%E5%92%8C%E9%80%97%E5%8F%B7%E4%B8%AD%E7%9A%84%E8%B4%9F%E6%95%B0.png)
我正在尝试创建一份示例财务报表。为了便于演示,下面是我的最小工作示例:
\documentclass[12pt]{article}
\usepackage{xfp}
\usepackage{siunitx}
\begin{document}
Using fpeval: 1,000 - 2,000 = $\num[group-separator={,}]{\fpeval{1000 - 2000}}$.
Using comma in inline math environment (for demon purposes): $1,000$
text: 1,000
Desired result: (1,000)
\end{document}
输出:
我尝试使用\num
带有 的命令group-separator
,但无济于事。组分隔符不会出现。有没有办法在数学环境中使用一些命令来获得所需结果,如“所需结果”中所示?我希望当数字为负数时显示括号(而不是当数字为非负数时不显示),并且当我在数学环境中放置逗号时,逗号后面会有多余的空格。
更新:除了提供的答案之外,我还设法使用了bracket-negative-numbers
选项siunitx
。
答案1
您需要设置group-minumum-digits
为4
:标准设置为5
。例如
\documentclass[12pt]{article}
\usepackage{siunitx}
\sisetup{group-separator = {,}, group-minimum-digits = 4}
\begin{document}
Using \textsf{siunitx}: $\num{1000} - \num{2000} =
\num[evaluate-expression]{1000 - 2000}$.
\end{document}
答案2
嗯,也许你需要更多预定义参数,比如
您可以
\usepackage[round-mode=places,group-separator={,},output-decimal-marker={.}]{siunitx}
在序言中使用,\num{\fpeval{1000 - 2000}}
如果需要以相同的方式显示所有数字,请使用。或者你也可以使用
\num[round-mode=places,group-separator={,},output-decimal-marker={.}]{\fpeval{1000 - 2000}}