
Я только что начал использовать пакет chemfig для рисования химии. Однако возникла проблема с вертикальным выравниванием. Вертикальное выравнивание "2 Water", реакционной стрелки и "2 ABC" совершенно случайно. Как мне выровнять их в одном вертикальном положении?
Также я хотел бы узнать, как повернуть второе кольцо, чтобы выровнять его в той же ориентации, что и первое?
\documentclass{article}
\usepackage{chemfig}
\usepackage{tikz}
\usepackage[ngerman]{babel}
\usetikzlibrary{babel}
\tikzstyle{arrow}=[draw, -latex]
\begin{document}
\schemestart
2 Water + \chemfig{O=[:-90]*5(-[@{b1}]O-[@{b2}](@{a1})-(@{a2})-[@{b4}]O-[@{b5}])} \arrow{->[+2 $H^+$]} \chemfig{*5(-[@{b1}]O-[@{b2}](@{a1})-(@{a2})-[@{b4}]O-[@{b5}])} + 2 ABC
\schemestop
\end{document}
решение1
chemfig
всегда помещает первый атом молекулы на базовую линию, поэтому вам придется переписать молекулу так, чтобы атом, который вы хотите поместить на базовую линию, был первым. Например,
\documentclass{article}
\usepackage{chemfig}
\usepackage{chemformula}
% \schemedebug{true} % Uncomment this to see how it works
\begin{document}
\schemestart
\chemfig{\ch{2 "Water"}}
\+
\chemfig{[:-54]O*5(---O-(=O)-)}
\arrow(.mid east--.mid west){->[\ch{2 H^+}]}
\chemfig{[:-54]O*5(---O--)}
\+
\chemfig{\ch{2 ABC}}
\schemestop
\end{document}
дает
Обратите внимание, что
- TikZ уже загружен Chemfig, поэтому вам не нужно
\usepackage{tikz}
; - Я обернул химическую запись в математическую форму или текст с помощью
chemformula
команда\ch
. - Я использовал якоря в
\arrow
для того, чтобы молекулы были выровнены. Они описаны вРуководство Chemfig, со стр. 50.