我计划创建基于 SIunits 的宏来在我的 XML 转换过程中支持 SIunits 包。
在此过程中,我发现在执行\per
命令时出现了一些问题,我尝试了以下方法
\documentclass{book}
\def\cubed{\ifx N\cbicperon\ensuremath{^3}\fi\let\cbicperon=Y}%
\def\cubic{\ifx N\cbicperon\ensuremath{^3}\fi\let\cbicperon=Y}%
\def\per{\let\peron=Y}%
\def\placesupscript{\ifx Y\cbicperon\ensuremath{^{-3}}\else\ifx Y\sqperon\ensuremath{^{-2}}\else\ifx Y\peron\ensuremath{^{-1}}\fi\fi\fi\let\peron=N\let\cbicperon=N\let\sqperon=N}%
\def\meter{\textrm{m}\placesupscript}%
\def\kelvin{\textrm{K}\placesupscript}%
\def\mole{\textrm{mol}\placesupscript}%
\def\kilo{\textrm{k}}%
\def\gram{\textrm{g}\placesupscript}%
\def\joule{\textrm{J}\placesupscript}%
\begin{document}
$v_{1}=\frac{RT_{1}}{p_{1}}=\SI{0,7876}{\metre\cubed\per\kilo\gram}$
$\rho=\SI{1000}{\kilo\gram\cubic\metre\mole\per\metre\cubed}$
$c_{p}=\SI{4,18}{\kilo\joule\per\kilogram\per\cubic\kelvin\joule}$
$\dot{m}_{\text{total}}=\SI{20e3}{\kilo\gram\per\second}$
$\SI{20}{\metre\per\second}$
\end{document}
有没有什么办法可以处理这种情况?所需输出已附上