chemfig и MolDraw: вставьте chemfig, редактируйте визуально, экспортируйте в LaTeX

Опубликовано: 17 октября 2026 г. · Автор: Scidart Academy · Время чтения: ~9 мин
Код chemfig для кофеина на тёмной панели рядом со структурой кофеина, которую по нему рисует MolDraw, с подписями Paste chemfig и Download .tex
Вставьте chemfig, чтобы увидеть рисунок, отредактируйте его на холсте и скачайте обратно файлом .tex.

Коротко: скопируйте код \chemfig{…} (или целую схему \schemestart … \schemestop, или весь файл .tex), откройте редактор MolDraw и нажмите Ctrl+V. MolDraw нарисует его вместе с изогнутыми стрелками. Отредактируйте мышью, затем выберите Download → chemfig (.tex), чтобы получить файл, который компилируется в pdflatex, или Copy as chemfig (LaTeX), чтобы получить код для вставки в диссертацию или статью.

Для кого это

chemfig — стандартный способ рисовать молекулы в LaTeX. Результат красив и хранится в том же файле, что и текст, но писать код долго. Вы набираете -[:30] и =[::-60], компилируете, смотрите и поправляете угол. Исправлять чужой chemfig ещё сложнее, а изогнутая стрелка в \chemmove может потребовать множества попыток.

Теперь MolDraw читает и пишет chemfig. Вы сохраняете chemfig как свой формат, а для рисования используете холст:

  • Смотрите, что рисует фрагмент chemfig, без компиляции.
  • Исправляйте мышью: сдвиньте атом, переверните двойную связь, добавьте заряд или изогнутую стрелку.
  • Получайте chemfig обратно — компилируемый в pdflatex, с теми же углами, что на экране.
  • Начинайте с других форматов (SMILES, MOL, файлы ChemDraw, название соединения) и получайте на выходе chemfig.

Всё работает в браузере. Ваш код не отправляется на сервер для преобразования.

Вставка chemfig на холст

Редактор MolDraw со схемой SN2, вставленной из chemfig: гидроксид плюс бромметан, стрелка реакции с подписью SN2 над ацетоном, метанол плюс бромид, две изогнутые стрелки и названия под каждым соединением
Схема chemfig, вставленная через Ctrl+V. Названия, текст у стрелки и обе изогнутые стрелки переносятся.
  1. Скопируйте код из своего редактора или Overleaf. Подходит одна команда \chemfig{…}, несколько таких команд, блок \schemestart … \schemestop или полный документ.
  2. Откройте редактор MolDraw, щёлкните по пустой части холста и нажмите Ctrl+V (Cmd+V на Mac). Можно также использовать кнопку Paste или контекстное меню → Paste.
  3. Рисунок появится выделенным рядом с тем, что уже есть на холсте. Перетащите его куда нужно.

Попробуйте на этой схеме:

\schemestart
  \chemname{\chemfig{*6(=-=-=-)}}{benzene}
  \+
  \chemfig{Br-Br}
  \arrow{->[FeBr$_3$][CH$_2$Cl$_2$]}
  \chemname{\chemfig{*6(=-=(-Br)-=-)}}{bromobenzene}
\schemestop

MolDraw сохраняет заданные вами углы и длины связей, поэтому рисунок имеет ту же форму, что и в PDF. Подписи вроде H_3C, NH_2 или {CO_2Me}, заряды, неподелённые пары из \lewis или \charge и узлы @{name} переносятся полностью.

Редактируйте как любой рисунок

Вставленный рисунок — обычная структура MolDraw, поэтому с ней работают все инструменты:

  • перетаскивайте атомы или выделяйте группу и поворачивайте её;
  • наведите на связь и нажмите 1, 2 или 3, чтобы сделать её одинарной, двойной или тройной, а щелчком по двойной связи инструментом двойной связи переносите её вторую линию на другую сторону;
  • добавляйте заряды, неподелённые пары и радикалы с панели инструментов или из контекстного меню;
  • рисуйте изогнутые стрелки и «крючки» инструментом стрелок. Они прикрепляются к неподелённым парам, связям и зарядам и остаются прикреплёнными при перемещении атомов;
  • редактируйте текст над и под стрелкой реакции двойным щелчком.

Вы также получаете химические проверки, которых нет в chemfig: предупреждения о валентности, формулу и массу, SMILES и 3D-вид каждой структуры.

Экспорт chemfig обратно в LaTeX

Открытое меню Download в MolDraw с группами Image, Chemistry и Text; выделен последний пункт группы Text — chemfig .tex
Download → chemfig (.tex), в конце группы Text.

Есть два способа вывода:

  • Download → chemfig (.tex) сохраняет полный самостоятельный файл LaTeX. Скомпилируйте его отдельно, чтобы получить PDF рисунка, или вставьте этот PDF в документ через \includegraphics.
  • Copy as chemfig (LaTeX) (в меню Copy и в контекстном меню Copy as) копирует только код рисунка, без \documentclass. Вставьте его прямо в диссертацию или статью.

Для скопированного кода один раз добавьте в преамбулу эти две строки:

\usepackage{chemfig}
\usetikzlibrary{arrows.meta,decorations.pathmorphing}

Если на рисунке есть изогнутые стрелки или полимерные скобки, компилируйте дважды. chemfig рисует их по позициям, сохранённым при первом запуске. Если сначала выделить часть холста, экспортируется только выделение.

Как выглядит экспортированный код

Вот файл, который MolDraw записывает для схемы SN2 с первого снимка экрана:

% Exported from MolDraw — compile with pdflatex / lualatex (twice: arrows and brackets use positions from the first run)
\documentclass[border=22pt,varwidth=60cm]{standalone}
\usepackage{chemfig}
\usetikzlibrary{arrows.meta,decorations.pathmorphing}
\begin{document}
\setchemfig{+ sep left=2em, + sep right=2em, arrow offset=6pt}
{\centering \textbf{SN2 of bromomethane}\par}
\par\bigskip
\schemestart
  \chemname[2em]{\chemfig{@{a1}HO^{-}}}{hydroxide}
  \+
  \chemname[2em]{\chemfig{@{a2}-[@{b1}:90]@{a3}Br}}{bromomethane}
  \arrow{->[SN2][acetone]}
  \chemname[2em]{\chemfig{-[:90,,,1]OH}}{methanol}
  \+
  \chemfig{Br^{-}}
\schemestop
\chemmove{
  \draw[-{Stealth[length=4pt,inset=1.5pt]}]([shift={(1.07em,0.77em)}]a1) to[bend right=47] ([shift={(-0.39em,-0.23em)}]a2);
  \draw[-{Stealth[length=4pt,inset=1.5pt]}]([shift={(0.21em,-0.36em)}]b1) to[bend right=77] ([shift={(0.64em,-0.23em)}]a3);
}
\end{document}

На что обратить внимание:

  • Связи используют абсолютные углы (-[:90]), поэтому каждая связь направлена так же, как на холсте. Связь нестандартной длины получает коэффициент длины, например -[:30,1.2].
  • Атомы и связи, которых касается изогнутая стрелка, получают имена узлов (@{a1}, @{b1}). \chemmove рисует каждую стрелку между ними с углом bend, соответствующим изгибу на холсте.
  • Названия соединений стоят под структурами, с запасом места для изогнутых стрелок, которые выгибаются вниз.
  • Связи цикла замыкаются крючками (?[a]), а каждая двойная связь получает =^ или =_, чтобы её вторая линия была с той же стороны, что и в MolDraw, — у циклов внутри цикла.
Элиминирование E2, нарисованное дважды: вверху на холсте MolDraw, внизу — та же схема, скомпилированная в pdflatex из экспортированного chemfig, с теми же углами связей, изогнутыми стрелками, заголовком и условиями
Элиминирование E2 на холсте (вверху) и экспортированный chemfig, скомпилированный в pdflatex (внизу).

chemfig из SMILES, MOL или файлов ChemDraw

Поскольку MolDraw читает множество форматов, он работает и как конвертер в chemfig:

  1. Загрузите структуру: вставьте SMILES или InChI, найдите соединение по названию в поле PubChem или откройте файл MOL, SDF, RXN, CDXML или CDX (ChemDraw).
  2. При необходимости приведите её в порядок. Выравнивание и поворот есть на панели инструментов.
  3. Выберите Download → chemfig (.tex).

Это самый быстрый способ перенести набор рисунков ChemDraw в диссертацию на LaTeX: откройте каждый файл и скачайте его как chemfig.

Механизмы реакций и изогнутые стрелки

Изогнутые стрелки — самая трудная часть chemfig для ручного набора. В MolDraw вы рисуете их мышью или просите ИИ-ассистента нарисовать механизм, а экспорт сам пишет имена @{…} и блок \chemmove.

Когда вы вставляете chemfig, в котором уже есть стрелки \chemmove, MolDraw считывает, какие атомы или связи соединяет каждая стрелка и в какую сторону изгибается её bend. Затем он размещает стрелку по своим правилам рисования: хвост начинается на неподелённой паре, заряде или связи, а острие останавливается чуть не доходя до цели. Точно копировать кривую TikZ не нужно.

Полные разобранные примеры — в примерах механизмов в chemfig: радикальные цепные реакции с «крючками» и многостадийные полярные механизмы, каждый в виде файла .tex для скачивания.

Спросите ИИ-ассистента

Чат-ассистент в редакторе знает chemfig. Например, можно попросить:

  • «Экспортируй это как chemfig». Он вернёт код того, что на холсте.
  • «Нарисуй это: \chemfig{H_3C-C(=[:60]O)-[:-60]OH}». Он поместит структуру на холст.
  • «Нарисуй механизм кислотного гидролиза сложного эфира, а затем дай мне chemfig».

Что переносится в обе стороны

Каждый пункт ниже экспортирован, скомпилирован в pdflatex, прочитан обратно в MolDraw и сверен с исходным рисунком.

СвязиОдинарные -, двойные =, тройные ~; ароматические циклы в форме Кекуле; сторона второй линии двойной связи (=^ / =_); клиновидные и штриховые связи с их направлением (< > <: >:).
Стили связейВолнистые, жирные, пунктирные и донорно-акцепторные связи и цвета связей, записанные как опции TikZ у связи.
АтомыПодписи с неявными H, сокращённые группы (CO2Me, Ph), заряды, заряды в кружке (\oplus), изотопы, D и T, неподелённые пары и точки радикалов (\charge, \lewis), цвета атомов.
ЦиклыЛюбые циклы и конденсированные циклы; при импорте также *6(…), **6(…) и вложенные циклы.
Схемы->, <-, равновесие <=>, смещённое равновесие <->>, резонанс <->, стрелки ретросинтеза; условия над и под стрелкой в несколько строк; \+; \chemname; схемы, перенесённые на несколько строк.
ТекстЗаголовок над схемой и примечания под ней.
СкобкиСкобки переходного состояния с ‡ (\chemleft[ … \chemright]) и повторяющиеся звенья полимеров (\polymerdelim).
Изогнутые стрелкиДвухэлектронные стрелки и одноэлектронные «крючки» между именованными атомами и связями (\chemmove).

При вставке MolDraw также понимает \definesubmol с !{name}, начальный угол вроде \chemfig{[:30]…}, невидимые связи (draw=none), стрелки под углом вроде \arrow{->}[-90] (следующее соединение идёт ниже), \subscheme и названия цветов вроде red и blue.

Чего chemfig не может содержать

У некоторых объектов на холсте MolDraw нет формы в chemfig: вставленные изображения, фигуры и лабораторная посуда, рисунки от руки, орбитали, заливка циклов и выделения. В экспорт они не попадают, а строка подсказок после каждого скачивания или копирования сообщает, что было пропущено, — так ничего не исчезает незаметно.

Изогнутые или S-образные стрелки схем становятся прямыми стрелками chemfig. Текст, размещённый сбоку от рисунка (а не над или под ним), сохраняется в файле как комментарий %.

Краткий справочник по chemfig

Элементы синтаксиса chemfig, которые встречаются чаще всего, и что MolDraw рисует для каждого:

A-B=C~DОдинарная, двойная и тройная связи. Без указания угла связи идут вправо.
-[2], -[:30], -[::60]Угол с шагом 45°, абсолютный угол или угол относительно предыдущей связи.
-[:30,1.5]Угол и коэффициент длины (в 1,5 раза длиннее обычной связи).
< <: > >:Клиновидные и штриховые связи. < узкий у атома, с которого начинается связь.
C(-[2]H)(-[6]H)Ветвления в скобках.
*6(=-=-=-)Шестичленный цикл, здесь бензол. **6(------) рисует внутри окружность; MolDraw читает это как бензольное кольцо с чередующимися двойными связями.
?[a] … ?[a]Крючок: связывает два атома с одинаковой буквой (замыкает цикл).
=^, =_Двойная связь со второй линией слева или справа по направлению движения.
\charge{90=\:}{O}Неподелённая пара под углом 90° на O. \. — один электрон.
@{a1}Даёт имя атому или связи, чтобы \chemmove мог провести к ним стрелку.
\arrow{->[above][below]}Стрелка схемы с текстом сверху и снизу.

Устранение проблем

  • При вставке ничего не происходит. Текст должен содержать \chemfig или \schemestart. Сначала щёлкните по холсту, чтобы вставка попала в рисунок, а не в текстовое поле.
  • Изогнутые стрелки в PDF не на своих местах. Скомпилируйте ещё раз.
  • «I do not know the key /tikz/Stealth». Добавьте \usetikzlibrary{arrows.meta,decorations.pathmorphing} в преамбулу.
  • Структура после вставки выглядит сплющенной. Если chemfig помещает два атома в одну точку, MolDraw перестраивает структуру и сообщает об этом в строке подсказок. Приведите её в порядок кнопкой выравнивания.
  • «B» или «D» превратились в бор или дейтерий. MolDraw читает подписи атомов как химию. Буквы-заполнители из руководства chemfig читаются как элементы, если такой элемент существует.

Вопросы и ответы

Можно ли превратить код chemfig в рисунок?

Да. Вставьте код \chemfig{…}, схему \schemestart или целый файл .tex на холст MolDraw. MolDraw читает связи, углы, циклы, заряды, неподелённые пары, стрелки, названия соединений и изогнутые стрелки \chemmove и рисует их.

Может ли MolDraw экспортировать код chemfig?

Да. Download → chemfig (.tex) сохраняет отдельный файл LaTeX, а Copy as chemfig (LaTeX) копирует только код рисунка для вашего документа. Код компилируется в pdflatex и lualatex.

Какие пакеты LaTeX нужны?

chemfig плюс библиотеки TikZ arrows.meta и decorations.pathmorphing: \usepackage{chemfig} и \usetikzlibrary{arrows.meta,decorations.pathmorphing}. В скачанном файле эти строки уже есть.

Почему после компиляции изогнутые стрелки не на своих местах?

\chemmove в chemfig рисует изогнутые стрелки по позициям, сохранённым при первом запуске LaTeX. Скомпилируйте файл второй раз, и стрелки встанут на свои атомы и связи.

Можно ли превратить файл ChemDraw или MOL в chemfig?

Да. Откройте файл MOL, SDF, CDXML или CDX в MolDraw или вставьте SMILES, затем выберите Download → chemfig (.tex).

Что не переводится в chemfig?

У изображений, фигур и лабораторной посуды, рисунков от руки, орбиталей, заливки циклов и выделений нет формы в chemfig. После скачивания или копирования MolDraw перечисляет всё пропущенное в строке подсказок.

Это бесплатно?

Да. Вставка и редактирование chemfig в браузере бесплатны. Для скачивания файлов нужна бесплатная учётная запись MolDraw.

Полезные руководства

Последнее обновление: