There are several LaTeX packages that purport to do this, but they all have their limitations because the TeX machine isn’t really designed to solve this sort of problem. Piet van Oostrum has conducted a survey of the available packages; he recommends:
There is a (more or less similar)\begin{floatingfigure}[options]{width of figure} figure contents \end{floatingfigure}
floatingtable
environment.
The tables or figures can be set left or right, or alternating on even/odd pages in a double-sided document.
The package works with the multicol package, but doesn’t work well in the neighbourhood of list environments (unless you change your LaTeX document).
The syntax of the\begin{wrapfigure}[height of figure in lines]{l,r,...}[overhang]{width} figure, caption, etc. \end{wrapfigure}
wraptable
environment is similar.
The height may be omitted, in which case it will
be calculated from the size of the figure; the package will use
the greater of the specified and the
actual width. The {l,r,etc.} parameter may
also be specified as i(nside) or
o(utside) for two-sided documents, and uppercase
may be used to indicate that the picture should float. The
overhang allows the figure to be
moved into the margin. The figure or table will entered into the
list of figures or tables if you use the \caption
command.
The environments do not work within list environments that end before the figure or table has finished, but can be used in a parbox or minipage, and in twocolumn format.
All parameters except the Picture are optional. The picture can be positioned left or right, boxed with a rectangle, oval, shadowbox, dashed box, and a caption can be given which will be included in the list of figures.\parpic
(width,height)(x-off,y-off)[Options][Position]{Picture}
Paragraph text
Unfortunately (for those of us whose understanding of German is not good), the documentation is in German. Piet van Oostrum has written a summary in English.
\parshape
primitive that allows
you to adjust the margins of the text of a paragraph, by line (Knuth
provides an example of such use, with text typeset in a circle,
half-overlapping the margin, in chapter 14 of the TeXbook). To
place insertions in the middle of a paragraph requires effort of an
entirely different sort; the cutwin package does this for
you. It requires a set of “part line widths” (two per line), and
typesets the “cutout” section of the paragraph line by line. The
examples in the package documentation look enticing.
Plain TeX users only have one option: figflow (which doesn’t work in LaTeX). Figflow only offers flowed figures at the start of the paragraph, but it seems perfectly functional. Syntax is
(the user is responsible for having the dimensions correct, and for ensuring the figure fits on the page).\figflow
{‹width›}
{‹height›}
{‹figure›}
This answer last edited: 2009-06-11
This question on the Web: http://www.tex.ac.uk/cgi-bin/texfaq2html?label=textflow