使用货币符号和千位分隔符

使用货币符号和千位分隔符

我经常使用该eurosym包来排版欧元值。

\documentclass{article}
\usepackage{eurosym}
\begin{document}    
\EUR{100000}
\end{document}

这相当于“100000 欧元”。

但是它缺少千位分隔符选项。对于英文文本,我想将其转换为“€ 100,000”。在德文文本中,人们宁愿将其转换为“100.000 €”。欧元符号的位置已由 eurosym 包处理。

有没有办法(理想情况下是一个包​​)可以提供此功能,或者有人知道如何轻松实现此功能?

答案1

只需使用相同的eurosym包以及sistyle使用 定义分隔符位置为千位的包即可SIthousandsep{,}。然后您可以使用这个

\documentclass{article}
\usepackage{eurosym}
\usepackage{sistyle}
\SIthousandsep{,}
\newcommand{\euros}[1]{\euro{\num{#1}}}

\begin{document}
I have a 5-figure pay check with \euros{40000}.

Now I am a millionaire with \euros{4000000}.

I wish I own a Ferrari worth of \euros{400000000000} (I have no idea how much that costs).
\end{document}

要得到:

在此处输入图片描述

PS:我更喜欢使用\euro{...}而不是\EUR{...}。因为后者会给出额外的虚假空间,我个人并不喜欢 ;)

输出内容\EUR{...}

在此处输入图片描述

另请注意,您也可以使用\euro

答案2

结合:eurosymsiunitx

\documentclass{article}
\usepackage{eurosym}
\usepackage{siunitx}

\newcommand{\eur}[2][]{\EUR{\num[#1]{#2}}}

\begin{document}

\eur{10000}

\eur[group-separator={,}]{10000}

\sisetup{group-separator={,}}

\eur{10000}

\end{document}

可以将数字格式的特定选项作为可选参数传递,或使用 进行默认设置\sisetup

在此处输入图片描述

相同,但有\usepackage[right]{eurosym}

在此处输入图片描述

相关内容