页面右下角环绕徽标

页面右下角环绕徽标

我在每个页面的右下角都放置了一个方形徽标(使用绝对定位和 tikz 放置),它相当大。我希望文本能够围绕徽标流动/环绕 - 可以这样做吗?

例如,我想要类似下面的内容,其中(a是文本,l是徽标)

+--------------+
| aaaaaaaaaaaa |
| aaaaaaaaaaaa |
| aaaaaaaaaaaa |
| aaaaa +------+
| aaaaa | llll |
| aaaaa | llll |
+------ +------+

编辑,下面是文本和徽标重叠的示例:

\documentclass{article}
\usepackage[letterpaper,margin=1in]{geometry}
\usepackage{tikz}
\usepackage{lipsum}

\begin{document}

\begin{tikzpicture}[remember picture,overlay]
  \node [shift={(-2 in, 2 in)}] at (current page.south east) {
    \rule{2in}{2in}
  };
\end{tikzpicture}

\lipsum[1-8]

\end{document}

这将生成以下文档

重叠徽标

您会注意到右下角的块覆盖了一些文本,我想通过让其环绕文本来避免这种情况。徽标很大,所以我不想让它占用页脚空间。

答案1

您可以使用\parshape指定不规则的段落形状,后续段落应遵循该形状。这仅有的适用于后续段落,并应为下一个段落重新定义。这是可行的,因为图像足够小,以至于最多两个段落可能因添加徽标而“受到影响”。

由于\parshape适用于特定段落,而段落取决于文档内容,因此很难自动执行此过程。请记住,您正在制作徽标作为tikz overlay,因此 TeX 在排版时不知道有“某些东西”。但是,在手动操作时,环绕徽标没有问题。

以下是 MWE:

环绕页面东南角的徽标

\documentclass{article}
\usepackage[letterpaper,margin=1in]{geometry}% http://ctan.org/pkg/geometry
\usepackage{tikz}% http://ctan.org/pkg/pgf
\usepackage{lipsum}% http://ctan.org/pkg/lipsum

\begin{document}

\begin{tikzpicture}[remember picture,overlay]
  \node [shift={(-2 in, 2 in)}] at (current page.south east) {
    \rule{2in}{2in}
  };
\end{tikzpicture}

\lipsum[1-6]

% Special paragraph formatting
\parshape=2 % 2 lines will be affected
0pt \linewidth % One regular line
0pt \dimexpr\linewidth-2in-1ex\relax % one (and remaining paragraph) reduced line
\lipsum[7]

% Special paragraph formatting
\parshape=5 % 5 lines will be affected
0pt \dimexpr\linewidth-2in-1ex\relax % Four reduced lines
0pt \dimexpr\linewidth-2in-1ex\relax
0pt \dimexpr\linewidth-2in-1ex\relax
0pt \dimexpr\linewidth-2in-1ex\relax
0pt \linewidth % one (and remaining paragraph) at regular width
\lipsum[8]

\end{document}

\parshape=<n> <i1> <l1> <i2> <l2> ...设置段落中后续行的行i缩进和行宽。如果段落继续超过行,则使用最后设置的行缩进和行宽。l<n><n><i> <l>

  • 对于调整格式后的第一段,线条的格式为(\parshape=2):第一行有indent0ptline 宽度\linewidth,而第二行及后续行有indent0ptline 宽度\linewidth-2in-1ex,这会1ex在徽标边界和文本之间留出间隙。

  • 对于需要调整格式的第二段,行格式(\parshape=5):四行有i缩进0ptl行宽\linewidth-2in-1ex,最后一行及后续行有i缩进0ptl行宽\linewidth,恢复传统段落形状。

答案2

这个软件包有可能wrapfig就是您所需要的解决方案。

相关内容