我在我的文档中使用 Lucida 字体,在文本中使用其旧式数字,在数学模式中使用其衬线数字。
但是,如何才能获得化学方程式中的直线图形呢mhchem
?
下面是一些示例代码(我使用 或 进行latex
编译pdflatex
)
\documentclass{article}
\usepackage[paperwidth=90mm, paperheight=20mm, left=10pt, top=20pt]{geometry}%
\usepackage[romanfamily=bright-osf,stdmathdigits=true,scale=.9]{lucimatx}
\usepackage{mhchem}
\begin{document}
Chemical formula: \ce{2 H2O -> 2H2 + O2}
\end{document}
这就是我得到的 这就是我想要的
我已经尝试过了
{\fontfamily{hlh}\selectfont \ce{2 H2O -> 2H2 + O2}}
但如果方程式变得更复杂,格式就会变得混乱
我找到了有同样问题的相关条目,但这个人使用luatex
:文本数字(旧式数字)和 mhchem
答案1
我无法测试这一点,因为我没有购买 Lucidia 字体,但可以使用mhchem
我创建的手册:
\documentclass{minimal}
\usepackage[paperwidth=90mm, paperheight=20mm, left=10pt, top=20pt]{geometry}
\usepackage[romanfamily=bright-osf,stdmathdigits=true,scale=.9]{lucimatx}
\usepackage{mhchem}
\mhchemoptions{textfontcommand=\fontfamily{hlh}\selectfont}
\mhchemoptions{mathfontcommand=\fontfamily{hlh}\selectfont\text}
\begin{document}
Chemical formula: \ce{2 H2O -> 2H2 + O2}
\end{document}
答案2
mhchem 使用活动字体。因此,如果您在文本模式下书写,您将获得旧式数字,而在数学模式下您将获得直线数字:
\documentclass{article}
\usepackage[osf]{mathpazo}
\usepackage{mhchem}
\begin{document}
\ce{2H2O -> 2H2 + O2} \qquad $\ce{2H2O -> 2H2 + O2}$
\end{document}
输出将是: