É muito conveniente usar mhchem
para compor fórmulas químicas. Funciona muito bem na escrita em inglês, mas ao usar o chinês (ctex), toda fórmula química é seguida de um espaço, o que torna o texto feio. Como resolver este pequeno (mas aparentemente não tão trivial) problema? Obrigado.
Aqui está o que quero dizer.
\usepackage[version=4]{mhchem}
There is no space after \ce{HNO3} in English environment.
如果是在中文的环境中\ce{HNO3}会有一个空格。
O que dá o resultado:
Responder1
O espaço parece ser adicionado pelo código ctex ao mudar da escrita latina para o chinês. O acima é gerado com xelatex. Observe que o espaço também é adicionado após !!
colocar um espaço vazio \mbox{}
para suprimi-lo, conforme mostrado na última linha.
\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}
com xetex o espaço parece ter sido adicionado no \XeTeXinterchartoks
código, e para luatex a saída é diferente, sem espaço depois, !!
mas ainda com espaço após a fórmula química.