![将 siunitx 中的 \percent 单位重新定义为仅在运行文本中的“百分比”](https://linux22.com/image/414673/%E5%B0%86%20siunitx%20%E4%B8%AD%E7%9A%84%20%5Cpercent%20%E5%8D%95%E4%BD%8D%E9%87%8D%E6%96%B0%E5%AE%9A%E4%B9%89%E4%B8%BA%E4%BB%85%E5%9C%A8%E8%BF%90%E8%A1%8C%E6%96%87%E6%9C%AC%E4%B8%AD%E7%9A%84%E2%80%9C%E7%99%BE%E5%88%86%E6%AF%94%E2%80%9D.png)
我需要重新定义\percent
单位,siunitx
使其在运行文本中显示为“百分比”,但在表格和方程式中仍显示为“%”。我认为一定有一个选项,但我查看了软件包文档,没有找到任何选项。
答案1
我不知道是否有方法可以确定您是否在表中。什么做exist 是一种检查您是否处于数学模式的方法;您可以执行以下操作:
\documentclass{article}
\usepackage{siunitx}
\DeclareSIUnit{\textpercent}{percent}
\newcommand{\autopercent}{\ifmmode\,\si{\percent}\else\si{\textpercent}\fi}
\begin{document}
This is in text: 12~\autopercent; and you have to use \verb|{}| after the
command as in 5~\autopercent{} if you have a space after. In equation:
\[
A = 14\autopercent
\]
\end{document}