Grupos funcionales de colores en la sintaxis de chemfig

Grupos funcionales de colores en la sintaxis de chemfig

Quiero colorear grupos funcionales simples en moléculas orgánicas usando el chemfigpaquete. Se me ocurrió una solución que logra lo que quiero (MWE), pero la encuentromuyincómodo. Pensé que sería posible agrupar a todo un grupo en una sola colordeclaración.Esta pregunta sobre colorear el fondo.de un grupo de átomos chemfigtambién da un claro énfasis gráfico de un grupo de átomos.

¿Es mi solución, y la solución a la pregunta anterior, la forma más fácil de colorear o marcar grupos de átomos (incluidos los enlaces) en chemfig? En este momento, no necesito reproducir fácilmente muchos grupos funcionales coloreados, pero me gustaría saber si hay formas más fáciles de resolver este problema sin predefinir macros para cada grupo.

Creo entender que el problema de fondo es la forma en que chemfigse utiliza Ti.kNodos Z para dibujar las estructuras, pero no puedo evitar pensar que debería haber una manera de definir algún entorno de color que se aplique a todos los Ti.kNodos Z hechos por chemfig.

MWE:

\documentclass{article}

\usepackage{chemfig}

\begin{document}
    \chemfig{H-C(-[2]H)(-[6]H)-C(-[2]H)(-[6]H)-{\color{blue}C}(=[1,,,,blue] {\color{blue}O})(-[7,,,,blue] {\color{blue}OH})}
\end{document}

Productor

ingrese la descripción de la imagen aquí

Respuesta1

Relacionado aesta publicación.

\documentclass{article}
\usepackage{chemfig}
\begin{document}
    \def\RED{\gdef\printatom##1{\color{red}\ensuremath{\mathrm{##1}}}}
    \def\BLACK{\gdef\printatom##1{\color{black}\ensuremath{\mathrm{##1}}}}
    \noindent
    \chemfig{H-C(-[2]H)(-[6]H)-C(-[2]H)(-[6]H)(-[,,,,draw=none]\RED)([,,,,,red]-[,,,,black]C(=[1]O)(-[7]OH))}\BLACK \\[1cm]
    \chemfig{H-C(-[2]H)(-[6]H)-C(-[2]H)(-[6]H)(-C(=[1]O)(-[7]OH))}
\end{document}

Dónde

  • [,,,,red]es establecer el color de los enlaces dentro del COOH.
  • [,,,,black]es establecer el color del enlace entre C2H5 y COOH.
  • (-[,,,,draw=none]\RED)es crear un átomo ad hoc para cambiar el color.
    • Puedes cambiar el color en cualquier lugar, pero a veces puede causar un mal espaciado/posicionamiento.
    • (por ejemplo, chemfigse lee \RED COOHcomo cinco átomos, y el primer átomo tiene un ancho cero).

información relacionada