mhchem 環境で化学式の後のスペースを削除する方法

mhchem 環境で化学式の後のスペースを削除する方法

化学式をタイプセットするのにとても便利ですmhchem。英語で書くときには非常に便利ですが、中国語 (ctex) を使用すると、すべての化学式の後にスペースが入るため、テキストが醜くなります。この小さな (しかし、それほど些細ではない) 問題を解決するにはどうすればよいでしょうか? ありがとうございます。

私が言いたいのはこういうことです。

\usepackage[version=4]{mhchem}
There is no space after \ce{HNO3} in English environment. 
如果是在中文的环境中\ce{HNO3}会有一个空格。

結果は次のようになります:

ここに画像の説明を入力してください

答え1

ここに画像の説明を入力してください

ラテン文字から中国語に切り替えるときに、ctex コードによってスペースが追加されるようです。上記は xelatex で生成されています。最後の行に示すように、!!空白を配置すると\mbox{}スペースが抑制されるように見えるため、スペースも追加されることに注意してください。

\documentclass{article}
\usepackage[UTF8]{ctex}
\usepackage[version=4]{mhchem}
\begin{document}

\showoutput
(\ce{HNO3})


AA \ce{HNO3} BB

中\ce{HNO3}会

中\ce{HNO3}!!会

中\ce{HNO3}\mbox{}会

\end{document}

xetex ではコード内にスペースが追加されているように見えます\XeTeXinterchartoksが、luatex では出力が異なり、化学式の後にはスペースはありません!!が、化学式の後にはスペースが残ります。

ここに画像の説明を入力してください

関連情報