Chemabove 中原子间的空间变化

Chemabove 中原子间的空间变化

考虑这个例子:

  \documentclass{memoir}
  \usepackage{fontspec}
  \usepackage{chemfig}
  \usepackage{unicode-math}
  \pdfmapline{+arial arial <8r.enc <sAarial.ttf}
  \begin{document}
  \setmainfont{arial}
  \setmathfont[range=\mathup] {arial}

  \chemfig{HO-[:30]**6(---(-\Chemabove[6pt]{N}{H}-[:-30](=[6]O)-[:30])---)}
  \end{document}

在此处输入图片描述

N 或多或少位于 H 的上方。我怎样才能增加这个距离?


编辑:如下例所示。出于某种原因,可选参数的行为不符合预期。至少在我的字体设置下不是这样。

  \documentclass{memoir}
  \usepackage{fontspec}
  \usepackage{chemfig}
  \usepackage{unicode-math}
  \pdfmapline{+arial arial <8r.enc <sAarial.ttf}
  \begin{document}
  \setmainfont{arial}
  \setmathfont[range=\mathup] {arial}

  \chemfig{HO-[:30]**6(---(-\Chemabove[24pt]{N}{H}-[:-30](=[6]O)-[:30])---)}
  \end{document}

在此处输入图片描述

答案1

一个快速的解决方案是使用\raisebox

\documentclass{memoir}
\usepackage{chemfig}

\begin{document}
\chemfig{HO-[:30]**6(---(-\Chemabove[6pt]{N}{H}-[:-30](=[6]O)-[:30])---)}
\chemfig{HO-[:30]**6(---(-\Chemabove[6pt]{\raisebox{1ex}{N}}{\raisebox{1ex}{H}}-[:-30](=[6]O)-[:30])---)}
\end{document}

在此处输入图片描述

答案2

\chemabove和的可选参数\chembelow正是这样做的!引用chemfig的手册:

\chemabove[<dim>]{<code>}{<stuff>}和 分别\chembelow[<dim>]{<code>}{<stuff>}将 置于<stuff>上方和下方,<code>垂直距离<dim>,而不改变 的边界框<code>。可选参数(如果写入)允许在每次调用时指定此维度。如果未使用可选参数,则将采用默认大小:其值为1.5pt但可以使用宏 进行修改\setstacksep{<dimension>}。这些命令独立于宏\chemfig,可在其参数内部或外部使用。

注意

不改变边界框<code>

这正是这些宏与大写版本的区别所在,\Chemabove也是\Chembelow改变边界框!(还有另一对具有相同区别的宏:\lewis\Lewis。)

让我们看看它是否有效。


默认距离(1.5pt):

\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}

\chemfig{HO-[:30]**6(---(-\chemabove{N}{H}-[:-30](=[6]O)-[:30])---)}

\end{document}

在此处输入图片描述


距离较大(5pt):

\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}

\chemfig{HO-[:30]**6(---(-\chemabove[5pt]{N}{H}-[:-30](=[6]O)-[:30])---)}

\end{document}

在此处输入图片描述


距离更大(5pt)并且\Chemabove- 请注意,N由于边界框的变化,相对于键不再正确放置:

\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}

\chemfig{HO-[:30]**6(---(-\Chemabove[5pt]{N}{H}-[:-30](=[6]O)-[:30])---)}

\end{document}

在此处输入图片描述

相关内容