化学公式名称中的断线/换行符

化学公式名称中的断线/换行符

在编写无机命名法讲座的过程中,我想将居中的多行文本放在chemformula的name函数中。

据我尝试,使用 创建新行\\不起作用。使用\newline给出多行输出,但向左移动。转义多行文本并没有更好的效果。

以下是 MWE:

\documentclass{standalone}
\usepackage{chemformula}
\begin{document}

\ch{!(hydrogen~chloride\newline{}chlorhydric~acid)( HCl )} % gives left-shifted output

\ch{!(hydrogen~chloride\\chlorhydric~acid)( HCl )} % does not typeset

\end{document}

谢谢

答案1

chemformula允许您以任何您想要的方式设置“名称”。这也允许您将其放在表格中。(唯一的缺点是您不能\\在这里使用换行符,因为在其输入中\ch会绕过\\以允许在类似¹的环境中跨多行使用align。)

\documentclass{article}
\usepackage{chemformula}

\newcommand\myformat[1]{%
  \scriptsize\centering
  \def\newline{\tabularnewline}%
  \begin{tabular}{c}
    #1
  \end{tabular}%
}

\setchemformula{name-format=\myformat}

\begin{document}

\ch{!( hydrogen~chloride \newline chlorhydric~acid )( HCl )}

\end{document}

在此处输入图片描述


  1. 这反过来允许chemmacros包定义reactions环境。

答案2

\documentclass[border=2mm]{standalone}
\usepackage{chemformula}
\begin{document}
\ch{!( \chname(chlorhydric~acid)(hydrogen~chloride) )( HCl )}
\end{document}

在此处输入图片描述

相关内容