
chemfig で記述された次の 2 つの分子を正しく整列させる方法がわかりません。 両方の構造は、次の[t]
オプションで\begin{subfigure}
整列されます。 2 番目の構造は上部にずれています。 整列には、両方の構造の開始点 (どちらの場合も、構造の左端の最も高い端) が使用されているようです。
構造物の周囲に目に見えないボックスを定義したり、この問題を別の方法で解決したりする可能性はありますか?
これが私のコードです:
\documentclass[a4paper]{scrartcl}
\usepackage{chemfig}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{caption}
\begin{document}
\begin{figure}[htbp]
\centering
\begin{subfigure}[t]{0.5\textwidth}
\centering
\chemfig[][scale=0.6]{CH_3-[6]-[:-30]O-[6]*6(-=-(-[6]S(=[4]O)(=[0]O)-[6]N*6(---N(-[6]CH_3)---))=-(-[:30]*6(=N-(*5(-(-[::-54]-[::-60]-[::60]CH_3)=N-N(-[::-54]CH_3)--))=-(=[2]O)-HN-[,,2]))=)}
\caption{structure 1}
\end{subfigure}%
\hfill
\begin{subfigure}[t]{0.5\textwidth}
\centering
\scalebox{1}{
\chemfig[][scale=0.6]{*6(=(-[6]O-[::60]-[6]CH_3)-(-[::-60](*6(-[,,1,2]HN-(=[6]O)-*5(-N(-[::-54]CH_3)-N=(-[::-54]-[::60]-[::-60]CH_3)--)=-N=)))=-=-)}}
\caption{structure 2}
\end{subfigure}
\caption{xyz
\label{fig:xyz}
}
\end{figure}
\end{document}
出力:
答え1
わかりました。ここに方法を見つけました。http://latex.org/forum/viewtopic.php?f=45&t=23024
私はtikzに個別のベースラインを与えることで問題を解決しました
\chemfig[baseline=(mybase.north)][...]{...}
右上隅の CH3 のベースラインの定義:
...[::-60]@{mybase}CH_3...
修正されたコードは次のようになります。
\documentclass[a4paper]{scrartcl}
\usepackage{chemfig}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{caption}
\begin{document}
\begin{figure}[htbp]
\centering
\begin{subfigure}[t]{0.5\textwidth}
\centering
\chemfig[][scale=0.6]{CH_3-[6]-[:-30]O-[6]*6(-=-(-[6]S(=[4]O)(=[0]O)-[6]N*6(---N(-[6]CH_3)---))=-(-[:30]*6(=N-(*5(-(-[::-54]-[::-60]-[::60]CH_3)=N-N(-[::-54]CH_3)--))=-(=[2]O)-HN-[,,2]))=)}
\caption{structure 1}
\end{subfigure}%
\hfill
\begin{subfigure}[t]{0.5\textwidth}
\centering
\scalebox{1}{
\chemfig[baseline=(mybase.north)][scale=0.6]{*6(=(-[6]O-[::60]-[6]CH_3)-(-[::-60](*6(-[,,1,2]HN-(=[6]O)-*5(-N(-[::-54]CH_3)-N=(-[::-54]-[::60]-[::-60]@{mybase}CH_3)--)=-N=)))=-=-)}}
\caption{structure 2}
\end{subfigure}
\caption{xyz
\label{fig:xyz}
}
\end{figure}
\end{document}
その結果は次のようになります: