禁用此页面的右栏

禁用此页面的右栏

我有一份很长的两栏文档。在其中一页中,我添加了一个图形,该图形正好横跨该页面的右半部分并触及边缘;使用以下代码完成:

\begin{tikzpicture}[remember picture,overlay]
\node[anchor =north east, inner sep=0pt,outer sep=0pt] at (current page.north east) {\includegraphics[width=0.5\paperwidth,height=\paperheight]{gfx/portraitmod}};
\end{tikzpicture}

问题是右列的文本刚好流过图像,看起来非常丑陋。

我怎样才能告诉 Latex 不要使用给定页面(例如,此页面)的左列或右列,而不干扰任何其他排版?

答案1

选项overlay使tikzpicture图片不占用空间,因此文本会溢出图片。仅供参考,remember picture允许您使用页面锚点,例如current page.north east。此外,您必须使用\columnwidth和 ,\textheight而不是\paperwidth\paperheight

解决方案是删除overlay选项。

\documentclass[twocolumn]{article}
\usepackage{tikz}
\usepackage{lipsum}
\begin{document}
  \lipsum[1-3]
  \begin{tikzpicture}[remember picture]
    \node[anchor =north east, inner sep=0pt,outer sep=0pt] at (current page.north east)
        {\includegraphics[width=\columnwidth,height=\textheight]{example-image}};
  \end{tikzpicture}
\end{document}

在此处输入图片描述

另一方面,如果你想让图形覆盖右侧,使用afterpage包并发出\afterpage{\mbox{}\pagebreak}

\documentclass[twocolumn]{article}
\usepackage{tikz,afterpage}
\usepackage{lipsum}
\begin{document}
  \afterpage{\mbox{}\pagebreak}
  \lipsum[1]
  \begin{tikzpicture}[remember picture,overlay]
    \node[anchor =north east, inner sep=0pt,outer sep=0pt] at (current page.north east)
        {\includegraphics[width=0.5\paperwidth,height=\paperheight]{example-image}};
  \end{tikzpicture}
  \lipsum
\end{document}

在此处输入图片描述

相关内容