我想通过 chemfig 环境创建编号化学式。
梅威瑟:
\documentclass[a4paper,fleqn,leqno]{article}
\usepackage{polyglossia}
\usepackage{tikz,tikz-3dplot,graphicx}
\usepackage{mathtools,breqn,xparse}
\usepackage[fontsize=12]{scrextend}
\usepackage{array,multirow}
\usepackage{chemfig,circuitikz}
\usepackage{pgfplots}
\DeclareMathSizes{12}{12}{12}{7}
\newcolumntype{C}[3]{@{\hspace*{#1}}>{\centering\arraybackslash}p{#2}@{\hspace*{#3}}}
\newcolumntype{R}[2]{>{\raggedleft\arraybackslash}p{#1}@{\hspace*{#2}}}
\newcolumntype{L}[2]{@{\hspace*{#1}}>{\raggedright\arraybackslash}p{#2}}
\newcolumntype{"}[1]{@{\vrule width #1}}
\makeatletter\newcommand{\ohline}[1]{\noalign {\ifnum 0=`}\fi\hrule height #1\futurelet\reserved@a\@xhline}\makeatletter
\newlength\savedwidth
\newcommand{\ocline}[2]{\noalign{\global\savedwidth\arrayrulewidth\global\arrayrulewidth #1}\cline{#2}\noalign{\vskip\arrayrulewidth}\noalign{\global\arrayrulewidth\savedwidth}}
\begin{document}
{\renewcommand\arraystretch{1.3}
\begin{tabular}{L{0pt}{420pt}@{}C{0pt}{50pt}{0pt}}
\schemestart\setatomsep{2em}\chemfig[line width=0.75pt]{[:18]*5((-[:230]HO)=(-[:307]OH)-(=[:20]O)-O-(-[:150](-[:90]OH)-[:205]-[:150]HO)-)}\chemsign+\chemfig{I_{\scriptscriptstyle 2}}\chemrel[]{-{Stealth[scale=1.5,width=3pt]},line width=0.75pt}\chemfig[line width=0.75pt]{[:18]*5((=[:230]O)-(=[:307]O)-(=[:20]O)-O-(-[:150](-[:90]OH)-[:205]-[:150]HO)-)}\chemsign+\chemfig{2HI}\schemestop & (4)
\end{tabular}}
\end{document}
但是 I2、HF、(4) 不是垂直居中的。它们更靠近底部。
我希望它们垂直居中。我在 chemfig 公式中尝试了 '\arrow{0}[,0]' 技巧,但没有成功。我还需要表格垂直对齐方面的帮助。
答案1
equation
为什么不对编号反应使用?顺便说一句,\chemsign
和\chemrel
是弃用的宏,已在 v1.3 版中删除chemfig
。
\documentclass{article}
\usepackage{chemfig}
\setbondstyle{line width=.75pt}
% \usepackage{showframe}
\newcounter{reaction}
\begin{document}
\begin{center}
\begin{tabular}{cc}
\setatomsep{1.5em}
\schemestart[][184]
\chemfig{
[:18]*5(
(-[:230]HO)
=(-[:307]OH)
-(=[:20]O)
-O-(-[:150](-[:90]OH)-[:205]-[:150]HO)
-
)
}
\arrow{0}[,0]\+
\chemfig{I_2}
\arrow
\chemfig{
[:18]*5(
(=[:230]O)
-(=[:307]O)
-(=[:20]O)
-O-(-[:150](-[:90]OH)-[:205]-[:150]HO)
-
)
}
\arrow{0}[,0]\+
2\,HI
\schemestop &
\refstepcounter{reaction}(\thereaction)
\end{tabular}
\end{center}
% or:
% \begin{equation}
% \schemestart
% ...
% \schemestop
% \end{equation}
\end{document}