Siunitx 中百分比的特殊规则

Siunitx 中百分比的特殊规则

我工作的地方习惯做法是数字和单位之间留空格,但百分比除外。有没有办法使用 siunitx 包在整个文档中为单个单位创建这样的例外?

这是我的 MWE:

        \documentclass[a4paper]{article}
        \usepackage[alsoload=synchem,%
                    range-phrase=--%
                    ]{siunitx}
        \sisetup{range-units=single}
        \sisetup{separate-uncertainty}
        \sisetup{detect-all}
        \DeclareSIUnit\weight{w}
        \DeclareSIUnit\volume{v}
        \sisetup{inter-unit-product=\ensuremath{{\cdot}}}
        \begin{document}
        In a glass beaker, add sodium hydroxide (\SI{1}{\gram}) and gently pour deionised water (\SI{40}{\milli\liter}). 

    Let the solution mix on the magnetic stirrer for \SI{120}{\second}.
    
    Now carefully add more water to raise the volume to \SI{100}{\milli\liter} to produce a \SI{1}{\percent} \si{\weight\per\volume} solution.
    
    Is there a way to make \SI{1}{\percent} look like 1\% ?
     \end{document}

答案1

您可以重新声明该单位,使其应用​​专用的间距设置。获取字符意味着我们还有一些工作要做

\documentclass[a4paper]{article}
\usepackage{siunitx}
\catcode`\%=12\relax
\DeclareSIUnit[number-unit-product = ]\percent{%}
\catcode`\%=14\relax
\begin{document}

\SI{10}{\gram} but \SI{10}{\percent}

\end{document}

在 v3 中,选项名称已更新为quantity-product:以上内容适用于 v2 和 v3。

相关内容