![是否可以对浮动位置施加额外的限制?](https://linux22.com/image/406189/%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E5%AF%B9%E6%B5%AE%E5%8A%A8%E4%BD%8D%E7%BD%AE%E6%96%BD%E5%8A%A0%E9%A2%9D%E5%A4%96%E7%9A%84%E9%99%90%E5%88%B6%EF%BC%9F.png)
我目前正在处理一个文档twoside
,twocolumns
并且有一个特定的浮点数(覆盖整个列),出于美观目的,它应该只放在外面的列上;所以第一列在偶数页上,第二列在奇数页上。
到目前为止,我已经尝试通过控制它第一次被看到的时间来控制它的位置afterpage
,这有点有效,但远非一致。
答案1
是的,它有效。
\documentclass[twocolumn]{report}
\usepackage{lipsum}% MWE only
\makeatletter
\def\@floatplacement{\if@firstcolumn
\global\@topnum=0
\global\@botnum=0
\@fpmin=2\@colht
\else
\global\@topnum=\c@topnumber
\global\@botnum=\c@bottomnumber
\@fpmin=\floatpagefraction\@colht
\fi
\global\@toproom=\topfraction\@colht
\global\@botroom=\bottomfraction\@colht
\global\@colnum=\c@totalnumber}
\makeatother
\begin{document}
\begin{figure}[tb]
\caption{Test Figure}
\end{figure}
\begin{table}[tb]
\caption{Test Table}
\end{table}
\begin{figure}[p]
\centering
\rule{.9\columnwidth}{.9\textheight}
\end{figure}
\lipsum[1-10]
\end{document}