在双面文档中,是否可以将浮动内容放在左侧/右侧?

在双面文档中,是否可以将浮动内容放在左侧/右侧?

假设我有两个大的浮动环境,例如图形,我想将其中一个显示在左页,将另一个显示在右页。发生这种情况是因为我更关心比较图形的容易程度,而不是让它们靠近定义的位置。

我现在能做的就是p为两种环境设置说明符(实际上不需要,因为它们足够大,默认情况下可以放置在浮动页面中),查看它们的位置,如果位置不是我想要的,即第一个图形在右页,第二个图形在下一页左页,则更改我在代码中包含图形的位置。

这种方法很烦人,原因有二:

  • 为了获得正确的结果,我将代码中包含图形的位置移到别处,这意味着有时为了将图形放在文档中的正确位置,我必须将它们放在代码的另一个部分。结果是错误的标签。
  • 如果我在该页之前添加/删除内容,它们在文档中的显示方式可能会再次改变。因此,我必须不断移动这些图形,直到完成文档或只能将它们放在最后。

有没有办法说明给定的图形是否必须放在左/右页面上?或者,有没有办法定义从左页面开始的双浮动页面?

答案1

在顺利的日子里,您可以尝试afterpage,它不是最稳定的软件包,但可以用来自动到达接下来两页的开头,此时您可以将这两个数字相加。

在此处输入图片描述

\documentclass[a5paper,twoside]{article}

\def\zz{One two three four five six. \stepcounter{enumi} \Roman{enumi}, \roman{enumi}, seven eight nine ten. }
\def\zzz{\zz\zz red blue green \the\inputlineno, yellow.  \zz\zz\zz\par\zz\zz\zz}

\usepackage{afterpage}

\begin{document}

\begin{titlepage}
 zzz
\end{titlepage}
\section{One}

\zzz \zz\zzz



\section{Two}

\zz 
\afterpage{%
\ifodd\value{page}\relax
\expandafter
\afterpage
\fi
{\begin{figure}[p]
\raggedright
\rule{.7\textwidth}{.7\textheight}
\caption{on the left}
\end{figure}
\begin{figure}[p]
\raggedleft
\rule{.7\textwidth}{.7\textheight}
\caption{on the right}
\end{figure}}}

\zzz \zz \zz\zzz\zzz\zzz\zzz\zzz\zzz\zzz\zzz
\section{Three}
\afterpage{%
\ifodd\value{page}\relax
\expandafter
\afterpage
\fi
{\begin{figure}[p]
\raggedright
\rule{.7\textwidth}{.7\textheight}
\caption{on the left}
\end{figure}
\begin{figure}[p]
\raggedleft
\rule{.7\textwidth}{.7\textheight}
\caption{on the right}
\end{figure}}}

\zz \zzz\zzz \zz \zz \zzz
\afterpage{%
\ifodd\value{page}\relax
\expandafter
\afterpage
\fi
{\begin{figure}[p]
\raggedright
\rule{.7\textwidth}{.7\textheight}
\caption{on the left}
\end{figure}
\begin{figure}[p]
\raggedleft
\rule{.7\textwidth}{.7\textheight}
\caption{on the right}
\end{figure}}}
\zzz\zzz\zzz\zzz\zzz\zzz\zzz\zzz


\section{four}
\zz \zzz\zzz\zzz\zzz \zz \zz \zzz
\zz \zzz\zzz\zzz\zzz \zz \zz \zzz

\end{document}

相关内容