Химическая точечная диаграмма Льюиса: движущаяся квадратная скобка

Химическая точечная диаграмма Льюиса: движущаяся квадратная скобка
\documentclass{article}
\usepackage{chemfig}
\begin{document}

\schemestart
    \chemfig{\lewis{2.4.6.,C}-\lewis{2.6.0.,N}}
    \arrow
    \chemleft[ \chemfig{\lewis{4:,C}~\lewis{0:,N}}\chemright ]
    \chemmove{\node[] at (0pt,7pt) {\footnotesize $-$};}
\schemestop

\end{document}

Следующее создает это изображение:

введите описание изображения здесь

Как видите, квадратная скобка в правой части расположена слишком близко к точкам Льюиса. Я пробовал использовать hspace и просто нажимать пробел, но безрезультатно.

решение1

Это особенность \lewis; измерения берутся из символа ( Cили Nв вашем примере), а не из точек. В результате скобки появляются прямо рядом с точками Льюиса, если не добавлено никакого пробела. Команда \Lewisподстраивается под это (см. ниже) и также исправляет слишком близкое расстояние слева от стрелки. Спасибо @unbonpetit за указание на это.

введите описание изображения здесь

Первая строка использует код

\chemleft[\chemfig{\lewis{4:,C}~\lewis{0:,N}}\chemright]

Вторая строка добавляет a, \thinmuskipпомещая его \,после левой скобки и перед правой:

\chemleft[\,\chemfig{\lewis{4:,C}~\lewis{0:,N}\,}\chemright]

Третья строка добавляет «управляющий пробел», используя \␣после левой скобки (с конечным пробелом после \, хотя слеш необязателен в chemfig), и \ {}перед правой скобкой, поскольку пробел исчезает, если вы опускаете {}:

\chemleft[\ \chemfig{\lewis{4:,C}~\lewis{0:,N}\ {}}\chemright]

Вы также можете добавить свое собственное количество пространства, используя \hspace. Более подробную информацию о горизонтальном интервале можно найтиздесь.

Если вы хотите автоматически расставлять интервалы между скобками и стрелками с точками Льюиса, используйте \Lewisкоманду:

введите описание изображения здесь

\schemestart
    \chemfig{\Lewis{2.4.6.,C}-\Lewis{2.6.0.,N}}
    \arrow
    \chemleft[\chemfig{\Lewis{4:,C}~\Lewis{0:,N}}\chemright]
    \chemmove{\node[] at (0pt,7pt) {\footnotesize $-$};}
\schemestop

решение2

Я использую временное решение и добавляю только пробелы.

введите описание изображения здесь

\documentclass[a4paper,12pt]{article}
\usepackage{chemfig}
\begin{document}
\schemestart
    \chemfig{\lewis{2.4.6.,C}-\lewis{2.6.0.,N}}
    \arrow
    \chemleft[\,\,\chemfig{\lewis{4:,C}~\lewis{0:,N}}\,\,\chemright]
 \chemmove{\node[] at (0pt,7pt) {\footnotesize $-$};}
  \schemestop
\end{document}

Связанный контент