1. 利用带星号的浮动体环境
带星号的浮动体figure和table环境可以在双栏模板中使用,例如我们以IEEEtran为例,插入通栏公式
\documentclass{IEEEtran}
\usepackage{amsmath,lipsum}
\begin{document}
\lipsum[1]
\begin{figure*}
\begin{align}
a&=b+c=b+c=b+c=b+c=b+c=b+c
&=b+c=b+c=b+c=b+c=b+c=b+c
\end{align}
\end{figure*}
\lipsum[1-10]
\end{document}
可以发现,这样确实实现了公式的通栏,但是这个带星号的浮动体只会出现在下一页的顶部,无法出现在当前位置,所以会使得公式的顺序紊乱,如果手动将公式提前,使得它出现在当前页的顶部,会使得公式的编号紊乱,需要手动更改计数器equation的值,这样并不是一个最好的方法.
2. 利用cuted包提供的strip环境
cuted包可以说是完全解决了一个这样的问题,把公式环境用strip环境包裹,可以直接在当前位置插入通栏公式
\documentclass{IEEEtran}
\usepackage{amsmath,lipsum}
\usepackage{cuted}%%stripsep-3pt
\begin{document}
\lipsum[1-2]
\begin{strip}
\begin{align}
a&=b+c=b+c=b+c=b+c=b+c=b+c
&=b+c=b+c=b+c=b+c=b+c=b+c
\end{align}
\end{strip}
\lipsum[1]
\begin{strip}
\begin{align}
a&=b+c=b+c=b+c=b+c=b+c=b+c
&=b+c=b+c=b+c=b+c=b+c=b+c
\end{align}
\end{strip}
\lipsum[1-2]
\end{document}
效果如下
不过大家发现这里的公式上下似乎出现了不小的间距,小问题,在我的代码中有一个带注释的命令stripsep,这个命令就是strip环境的前后弹性粘连(间距),它的默认值为15pt plus 2pt minus 2pt,可以更改它的值来改变这个间距.例如这里的stripsep-3pt或者stripsep=-3pt将使得strip环境的前后间距设置为-3pt,不过我们还是建议大家将这个间距设置为弹性距离,方便在换页时候的排版,例如stripsep -3pt plus 3pt minus 2pt.这样的话,cuted包就彻底解决了双栏模板的通栏公式问题.
3. 双栏模板下插入跨栏的图片(表格)
对于一些强迫症患者,不仅希望公式当前位置,甚至也希望图表也在当前位置。原则上图表用figure和table环境可以使得图表在双栏模板下浮动到下一页的顶部,然后实现交叉引用即可,但是如果借助cuted包也可以实现将图表放在当前位置。在这里首先要注意的问题是,strip环境其实相当于是一个盒子,浮动体是不能放在限制浮动的盒子里面的,因此第一个想法是用float包,然后begin{figure}[H]放在strip环境中取消figure环境的浮动,但是这么做之后得到的效果并不理想,甚至也可以说是失败。一番尝试以后,我找到了另一个方法,就是加载caption宏包,不用figure环境而直接使用captionof命令。下面的mwe经过调试大家就知道了
\documentclass[twocolumn]{ctexart}
\usepackage{lipsum,mwe,cuted}
\usepackage{float}%%%%提供浮动体的[H]选项,进而取消浮动
\usepackage{caption}%%提供captionof命令
\stripsep-2pt
\begin{document}
\lipsum[1]
\begin{strip}
\begin{figure}[H]\centering\includegraphics[width=0.6textwidth]{example-image}\caption{跨栏不理想}
\end{figure}
\end{strip}\begin{strip}
\centeringincludegraphics[width=0.3textwidth]{example-image}
\captionof{figure}{跨栏插图成功}
\end{strip}\lipsum[1-2]
\end{document}
https://blog.csdn.net/weixin_39942033/article/details/110606149