I am not a wizzard, but i know about the picinpar package (avaible in the CTAN sites) : you can place your floating window on the left, right or center of the page, with text around.
For more detail, see Latex Companion p 53
Roland Roussillon
e-mail : rous...@imaginet.fr
----------------
Philip A. Viton
City & Regional Planning, OSU, 190 W. 17th Avenue, Columbus OH 43210
pvi...@magnus.acs.ohio-state.edu
I had the following thoughts on this.
A newspaper page-layout style, built on several existing packages, like
multicol, and those mentioned in other replies to this port, could work as
follows:
You first define the placement of illustrations on the page. The the text
columns are defined, how many, and their width , e.t.c.
Afterwards, the text is filled in the space left by the illustrations.
Too achieve this probably means a lot of hacking in the \output routine, I
don't know how much of this can be done with the existing packages. The
easiest approach may even be to do it from scratch, like: cutting the space
for text into rectangular pieces and let TeXs pagebuilder fill the pieces.
Floats need to be disabled.
It's not trivial to find a scheme how to specify the placement of things,
and how to calculate the remaining space for text. You might also want to
have a part of the text (like an article on a newspaper titlepage) in three
balanced columns, which are in turn partially covered by an illustration.
Some interaction/iterations are needed to get such a layout right anyway.
It should be robust enough to be able to fix some typos in a finished
layout, without the whole thing collapsing. Subpages, with a given text,
and fixed columns structure, including illustrations, could be placed like
illustrations on the main page.
Has anything like this been done?
Is it useful?
Is it feasible?
Stephan
PS: $1000 is not enough to pay for this work. I guess it needs to be done
for free, for the fun of it.
---------------------------------------------------------------------------
Stephan B"ottcher FAX: +972-3-640-7932
School of Physics and Astronomy Tel: +972-3-640-7722
High Energy Physics Department or -6094
Tel Aviv University Email: ste...@alzt.tau.ac.il
69978 Tel Aviv or Stephan....@cern.ch
Israel WWW: http://www-zeus.desy.de/~stephan/home.html
---------------------------------------------------------------------------
RR> Hello,
RR> I am not a wizzard, but i know about the picinpar package (avaible in
RR> the CTAN sites) : you can place your floating window on the left, right
RR> or center of the page, with text around. For more detail, see Latex
RR> Companion p 53
Don't use picinpar. It's dangerous. I have seen examples where it changed
the text in subtle ways.
--
Piet van Oostrum <pi...@cs.ruu.nl>
URL: http://www.cs.ruu.nl/~piet [PGP]
\usepackage{wrapfig}
\setlength{\wrapoverhang}{\marginparwidth}
\addtolength{\wrapoverhang}{\marginparsep}
..
\begin{wrapfigure}{O}{2.5in}
\caption{This is the figure}
\end{wrapfigure}
% \begin{wrapfigure}[12]{r}[34pt]{5cm} <figure> \end{wrapfigure}
% -- - ---- ---
% [number of narrow lines] {placement} [overhang] {width of figure}
%
% Placement is one of r, l, i, o, R, L, I, O, for right, left,
% inside, outside, (here / FLOAT).
% The figure sticks into the margin by `overhang', if given, or by the
% length \wrapoverhang, which is normally zero.
% The number of wrapped text lines is normally calculated from the height
% of the figure, but may be specified manually ("12" above).
As for floating to be vertically centered on a page, I will implement that
for $1000.
Donald Arseneau as...@reg.triumf.ca
--------------211B0E324BDB531913F4CA3C
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Stephan Boettcher wrote:
>
> Gunther Schadow wrote:
> >
> > QUEST FOR TeX WIZZARDS
> >
> > This is a quest for a TeXhacker who really understands the
> > system and how to do wizzardy things. I am looking for a
> > LaTeX style or plainTeX macros which implements a kind of
> > insertion that can float not only vertically but also
> > horizontally on the page. For example, if you have a
> > figure that is about 0.4\hsize
> > wide and 0.5\vsize high (or +----------------------------+
> > deep) it should be mounted | |
> > somewhere in the middle of the | ><><><><><><><><><><> |
> > page, say, bound to the outer | < |
> > margin with the text floating | > A NICE FIGURE PLACED |
> > around the figure. I try to | < |
> > give a demonstration in this | > AT THE OUTER MARGIN |
> > posting. | < |
Try the attached macro for plain TeX.
Ian Hutchinson
--------------211B0E324BDB531913F4CA3C
Content-Type: application/x-tex; name="flowmac.tex"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="flowmac.tex"
% FIGFLOW: plain TEX macro by Ian Hutchinson, 21 Oct 95.
% Make text flow round figure.
% Usage: \figflow{<width>}{<height>}{<[Figure+][Caption]>}
% at start of new paragraph. Figure top starts at insert.
% #1 figure width dimen. If negative, fig on right, else left.
% #2 figure height (including caption) dimen. (E.g.: 4 truein)
% #3 \special for figure if desired, then \vfill caption. (Both optional).
% Example: figflow{4 truein}{5 truein}{\epsfbox{figure.ps}\vfill Figure 1.}
% User is responsible for the figure fitting within the space defined.
% If figure won't fit on page, it is moved over the page break.
% If a new figflow starts before the old one is finished, a message is given
% and the second figure is skipped. Fix manually.
% Does not work for Latex.
\newdimen\pageremains\newdimen\pdepth
\newdimen\figwidth
\newdimen\figheight
\newcount\figlines
\newcount\flevel
\def\figflow#1#2#3{
\ifnum\flevel>0
\message{******Figure collision. Ignoring second figure.******}
\else
\figwidth=#1
\figheight=#2
\def\contents{#3}
% Put figure contents in an appropriate box.
\def\figure{\let\temp=\par \let\par=\plainpar
\line{\overfullrule=0pt% Avoid black box.
\ifdim \figwidth<0pt \hsize=-\figwidth \hss\else \hsize=\figwidth\fi
\advance \hsize by -10pt% Give a little extra hspace.
\vbox to \figheight{\vfil\noindent\contents}
\ifdim \figwidth>0pt \hss\fi
} \vskip-\figheight
\let\par=\temp%
}
\advance\figheight by \baselineskip
\divide\figheight by \baselineskip% convert height to lines.
\figlines=\figheight \multiply\figheight by \baselineskip
\begingroup\overfullrule=0pt% Turn off black box outside fig
\tolerance=1000% Allow more spaced out lines.
\flevel=1
% Store \par
\let\plainpar=\par
% Define new \par to process figures each paragraph.
\def\par{
\ifnum\flevel=1
% We are starting a new figure. Set to look for enough room.
\plainpar
% End the previous paragraph.
\pageremains=\pagegoal \advance\pageremains by -\pagetotal
\ifdim\pageremains<\figheight \message{Moving figure...}%keep looking
\else
% Found the starting place. Store prevdepth. Remove glue. Place the figure.
\pdepth=\prevdepth
\nointerlineskip
\figure
\hangindent \figwidth \hangafter -\figlines \hfuzz 5 pt
\flevel=2
\prevgraf=0
\figheight=\baselineskip% Removed parskip adjust.
\fi
\else
\ifnum\flevel=2%level 2, making the figure.
\ifdim\figheight<\parskip
\advance\figlines -1 \advance\hangafter 1
\advance\figheight\baselineskip
\else
\advance\figheight -\parskip%\message{else \the\figheight}
\fi
\hangcarrypar\relax% I don't know why, but this is needed.
\fi
\fi
}
\par
\vskip-\pdepth%Restore the prevdepth from the previous paragraph.
\fi
}
% Macros.
\def\endflow{\global\let\par=\plainpar\endgroup}% terminate main group.
\def\hangcarrypar{% Carry the hangindent to next par.
\edef\next{\hangafter=\the\hangafter\hangindent=\the\hangindent}
\plainpar\next
\edef\next{\prevgraf=\the\prevgraf}
\ifnum\prevgraf>0
\ifnum\prevgraf>\figlines \endflow \flevel=0
\else
\message{FIGFLOW: line \the\prevgraf, of \the\figlines.}
\leavevmode% Sets prevgraf to 0. So reset it using next.
\next
\fi
\fi
}
--------------211B0E324BDB531913F4CA3C--
(notes surround the main text, that is in a single column, in a larger
point size, if the page is large, you can also have two text columns
with notes all around) Someone proposed a _very good_ meal for this on
the gut mailing list...
|
| note note note note note note
| note note note note note note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note txt txt txt txt txt txt | txt txt txt txt txt txt note
note note note note note note | note note note note note note
note note note note note note | note note note note note note