wrapfig 如何指定图形的位置以及确切的尺寸

wrapfig 如何指定图形的位置以及确切的尺寸

这是一个普遍的问题。

我发现 wrapfigure 环境非常棘手。这取决于你把它放在哪里,如果你在顶部添加东西,你可能会让一个好的 wrapfig 变坏。我想知道是否有办法告诉环境将特定的图形放在特定页面的特定部分。

答案1

insbox是一组通用宏,允许在段落的左侧或右侧插入(几乎)任何框(图形文件、方程式等)。两个主要命令是和,其中\InsertBoxL{n}{boxcontent}[correction]\InsertBoxR{n}{boxcontent}[correction]段落n开头未更改的行数,可选的correction是应向左或向右缩进的补充行数,以防框高度计算不准确。此外,还有一个在插入点处插入段落的\InsertC{boxcontent}命令interrupts,它只是终止当前行,将框内容插入页面中心,然后恢复段落。

我曾经写过一个非常小的文件,它是和 添加和宏(放在外部或内部边缘)的insbox.sty包装器,它们模仿环境的和选项。以下是代码:insbox.tex\InsBoxO\InsBoxIoiwrapfigure

\ProvidesPackage{insbox}[2004/03/21 package wrapper for insbox.tex]
\RequirePackage{ifthen}
\input insbox
\newlength\insboxmargin
\insboxmargin=3mm
\makeatletter\@InsertBoxMargin=\insboxmargin\makeatother
\newcommand{\InsBoxO}[2]{\ifthenelse{\isodd{\value{page}}}{\InsertBoxR{#1}{#2}}{\InsertBoxL{#1}{#2}}}
\newcommand{\InsBoxI}[2]{\ifthenelse{\isodd{\value{page}}}{\InsertBoxL{#1}{#2}}{\InsertBoxR{#1}{#2}}}
\makeatletter\newcommand{\resetmargin}{\@restore@}\makeatother
\endinput 

对于在 中插入数字的问题,你可以看到我对此的lists environments回答(基于)insbox问题

要插入标题,必须使用threeparttable环境和\captionof命令(来自caption包)。

以下是一个例子:

\documentclass[a4paper,10pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{fourier}
\usepackage{insbox, wrapfig}
\usepackage{graphicx, captdef, threeparttable, caption}
\usepackage{lipsum}

\begin{document}
\setcounter{table}{2}
 \lipsum[1-2]
\verb+\InsertBoxR inserted here: +
 \InsertBoxR{10}{%
 \begin{threeparttable}
 \begin{tabular}{lrrr}
 \hline
 sgnj  & 0.31  & 1.16  & 1.16 \\     safd  & 0.46  & 0.91  & 0.99 \\     dsfv  & 0.42  & 0.78  & 0.56 \\     jl;;  & 0.35  & 1.18  & 1.47 \\     sdfd  & 0.38  & 0.76  & 0.79 \\     degf  & 0.27  & 1.29  & 1.33 \\     fewf  & 0.24  & 0.58  & 0.59 \\     werf  & 0.30  & 0.71  & 0.71 \\     fhjj  & 0.64  & 1.45  & 0.60 \\     wdff  & 0.45  & 1.16  & 0.79 \\
 \hline
 \end{tabular}
 \captionof{table}{My table}%\label{c_table3}
 \end{threeparttable}
 }[6]%
\lipsum [3-5]

\end{document}

在此处输入图片描述

相关内容