答案1
修改后的答案:
因此请求是不要使用\polymerdelim
。我想出了一个解决方案,感谢海科·奥伯迪克和这. 方法是使用 Ti钾Z 矩阵只有一个单元格(即chemfig
)。方括号需要向内移动,因此n
需要手动调整下标的位置。
\documentclass{article}
\usepackage{chemfig, tikz}
\usetikzlibrary{matrix}
\newsavebox\ourFormula
\sbox\ourFormula{
\chemfig[atom sep = 1.5em]{
-[@{opening,0.75}:30] % Left opening bracket
-[:+30] % C1
-[::-60] % C2
(
-[::-60] -[::+45] NH_2 % NH_2
\raisebox{2em}{\hspace{-2em}$\bullet$ HCI} % HCI
)
-[::+45, 3]
-[@{closing,0.25}:+15] % Right closing bracket
}
}
\begin{document}
\begin{tikzpicture}[
every left delimiter/.style={xshift=20pt},
every right delimiter/.style={xshift=-20pt}
]
\node (matrix) [left delimiter = {[}, right delimiter = {]}] {
\usebox\ourFormula\\
};
\node [ xshift=48pt, yshift=-25pt] {$n$};
\end{tikzpicture}
\end{document}
原始答案:
使用宏可以轻松获得括号\polymerdelim
(它还负责处理右下标n
)。现在,挑战是让•HCI
上面的NH_2
。我这样做的方法是使用\raisebox{vertical distance}{text}
。这使得•HCI
相对于位于右上角NH_2
。解决方案是使用\hspace{negative distance}
将其拉到左侧并使其垂直对齐。
如果你想更改代码,请确保编译它两次。
\documentclass{article}
\usepackage{chemfig}
\begin{document}
\chemfig[atom sep = 1.5em]{
-[@{opening,0.75}:30] % Left opening bracket
-[:+30] % C1
-[::-60] % C2
(
-[::-60] -[::+45] NH_2 % NH_2
\raisebox{2em}{\hspace{-2em}$\bullet$ HCI} % HCI
)
-[::+45, 3]
-[@{closing,0.25}:+15] % Right closing bracket
}
% Now, we can put everything inside the brackets and have n as our indice.
\polymerdelim[height=30pt, delimiters={[]}, indice=n]{opening}{closing}
\end{document}