答案1
chemformula
根据您的需要,使用软件包和一点 TikZ即可轻松实现:
\documentclass{article}
\usepackage{chemformula}
\NewChemBond{quadruple}{
\foreach \i in {-.15em,-.05em,.05em,.15em}{
\draw[chembond]
([yshift=\i]chemformula-bond-start) -- ([yshift=\i]chemformula-bond-end) ;
}
}
\NewChemBond{quintuple}{
\foreach \i in {-.16em,-.08em,0em,.08em,.16em}{
\draw[chembond]
([yshift=\i]chemformula-bond-start) -- ([yshift=\i]chemformula-bond-end) ;
}
}
\NewChemBond{sextuple}{
\foreach \i in {-.2em,-.12em,-.04em,.04em,.12em,.2em}{
\draw[chembond]
([yshift=\i]chemformula-bond-start) -- ([yshift=\i]chemformula-bond-end) ;
}
}
\NewChemBond{banana}{
\draw[chembond]
(chemformula-bond-start)
parabola[bend pos=.5] bend +(0,.5ex)
(chemformula-bond-end) ;
}
\begin{document}
\ch{X\bond{quadruple}X}\par
\ch{X\bond{quintuple}X}\par
\ch{X\bond{sextuple}X}\par
\ch{X\bond{banana}X}
\end{document}
答案2
以下是使用 chemfig 绘制 n 键(n>1)的方法:
\documentclass{article}
\usepackage{chemfig}
\usetikzlibrary{decorations.markings}
\makeatletter
\tikzset{nbond/.style args={#1}{%
draw=none,%
decoration={%
markings,%
mark=at position 0 with {\coordinate (CFstart@) at (0,0);},
mark=at position 1 with {%
\foreach\CF@i in{0,1,...,\number\numexpr#1-1}{%
\pgfmathsetmacro\CF@nbondcoeff{\[email protected]*(#1-1)}%
\draw ([yshift=\CF@nbondcoeff\CF@double@sep]CFstart@)--(0,\CF@nbondcoeff\CF@double@sep);
}%
}
},
postaction={decorate}
}
}
\makeatother
\begin{document}
\chemfig{A-[1,,,,nbond=4]B-[:-30,,,,nbond=5]C-[6,,,,nbond=6]D}
\end{document}
答案3
我现在不知道是否可以用 chemfig 制作四重键,但弯曲键没有问题。
使用 tikz 库“pathmorphing”和以下代码
\chemfig{A-[,3,,,decorate,decoration=snake]B}
你会得到这个:
可以使用节点制作其他形状。例如,尝试此代码
\chemfig{@{a}A-[,,,,draw=none]@{b}B}
\chemmove{\draw[-](a)..controls +(45:7mm) and +(225:7mm)..(b);}
得到以下内容:
解释:
225:7mm
225 是角度,7mm 是键的振幅。我们的键以 225° 的角度进入 B,曲线在 y=-7mm 处最小。
演示代码:
\documentclass[a4paper,11pt]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{chemfig}
\usepackage[T1]{fontenc}
\usepackage{chemfig}
\usetikzlibrary{decorations.pathmorphing}
\begin{document}
\schemestart
\chemfig{A-[,3,,,decorate,decoration=snake]B}
\schemestop
\par
\schemestart
\chemfig{@{a}A-[,,,,draw=none]@{b}B}
\chemmove{\draw[-](a)..controls +(45:7mm) and +(225:7mm)..(b);}
\schemestop
\end{document}
请确保运行编译两次以使弯曲的键出现!