Рассмотрим такой пример:
\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}
Буква N лежит примерно над буквой H. Как можно увеличить это расстояние?
EDIT: Как видно из примера ниже. По какой-то причине необязательный аргумент не ведет себя так, как ожидалось. По крайней мере, не с моей настройкой шрифта.
\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}
решение1
Одним из быстрых решений было бы использование \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}
решение2
Необязательные аргументы \chemabove
и \chembelow
делают именно это! Ссылаясь chemfig
на руководство:
Макросы
\chemabove[<dim>]{<code>}{<stuff>}
и\chembelow[<dim>]{<code>}{<stuff>}
размещают<stuff>
выше и ниже<code>
соответственно на вертикальном расстоянии<dim>
, не изменяя ограничивающий прямоугольник<code>
. Необязательный аргумент позволяет, если он записан, указывать этот размер при каждом вызове. Если необязательный аргумент не используется, будет взят размер по умолчанию: его значение равно ,1.5pt
но его можно изменить с помощью макроса\setstacksep{<dimension>}
. Эти команды не зависят от макроса\chemfig
и могут использоваться как внутри, так и вне его аргумента.
Обратите внимание на
не меняя ограничивающую рамку
<code>
часть, которая как раз и отличает эти макросы от версий с заглавными буквами \Chemabove
и \Chembelow
котораяделатьизмените ограничивающий прямоугольник! (Есть еще пара макросов с тем же отличием: \lewis
и \Lewis
.)
Давайте посмотрим, что из этого получится.
Расстояние по умолчанию ( 1.5pt
):
\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}
\chemfig{HO-[:30]**6(---(-\chemabove{N}{H}-[:-30](=[6]O)-[:30])---)}
\end{document}
Большее расстояние ( 5pt
):
\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}
\chemfig{HO-[:30]**6(---(-\chemabove[5pt]{N}{H}-[:-30](=[6]O)-[:30])---)}
\end{document}
Большее расстояние ( 5pt
) и \Chemabove
- обратите внимание, что оно N
больше не размещено правильно по отношению к связям из-за измененной ограничивающей рамки:
\documentclass[margin=.75cm]{standalone}
\usepackage{chemfig}
\begin{document}
\chemfig{HO-[:30]**6(---(-\Chemabove[5pt]{N}{H}-[:-30](=[6]O)-[:30])---)}
\end{document}