Cambiando el espacio entre átomos en Chemabove

Cambiando el espacio entre átomos en Chemabove

Considere este ejemplo:

  \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}

ingrese la descripción de la imagen aquí

La N está más o menos encima de la H. ¿Cómo puedo aumentar esta distancia?


EDITAR: Como se ve en el ejemplo siguiente. Por alguna razón, el argumento opcional no se comporta como se esperaba. Al menos no con mi fuente configurada.

  \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}

ingrese la descripción de la imagen aquí

Respuesta1

Una solución rápida sería utilizar \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}

ingrese la descripción de la imagen aquí

Respuesta2

¡Los argumentos opcionales de \chemabovey \chembelowhacen exactamente eso! Citando chemfigel manual de:

Las macros \chemabove[<dim>]{<code>}{<stuff>}y \chembelow[<dim>]{<code>}{<stuff>}colocan <stuff>arriba y abajo <code>respectivamente a una distancia vertical <dim>, sin cambiar el cuadro delimitador de <code>. El argumento opcional permite, si está escrito, especificar esta dimensión en cada llamada. Si no se utiliza el argumento opcional, se tomará un tamaño predeterminado: su valor es 1.5ptpero se puede modificar con la macro \setstacksep{<dimension>}. Estos comandos son independientes de la macro \chemfigy se pueden usar dentro o fuera de su argumento.

Observe la

sin cambiar el cuadro delimitador de<code>

parte que es exactamente lo que diferencia a estas macros de las versiones en mayúsculas \Chemabovey \Chembelowquehacer¡cambia el cuadro delimitador! (Existe otro par de macros con la misma diferencia: \lewisy \Lewis.)

Veamos que funciona.


La distancia predeterminada ( 1.5pt):

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

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

\end{document}

ingrese la descripción de la imagen aquí


Una distancia mayor ( 5pt):

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

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

\end{document}

ingrese la descripción de la imagen aquí


Una distancia mayor ( 5pt) y \Chemabove- observe que Nya no está colocado correctamente con respecto a los enlaces debido al cambio en el cuadro delimitador:

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

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

\end{document}

ingrese la descripción de la imagen aquí

información relacionada