diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex | 177 |
1 files changed, 140 insertions, 37 deletions
diff --git a/Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex b/Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex index 1c03a70aa57..53cc01236b3 100644 --- a/Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex +++ b/Master/texmf-dist/doc/latex/flowfram/ffuserguide.tex @@ -8,6 +8,7 @@ \usepackage[landscape,margin=1in,top=1in,bottom=1in]{geometry} \usepackage{color} \usepackage[colorlinks, + plainpages=false, linkcolor=black, bookmarksopen, pdfauthor={Nicola Talbot}, @@ -40,8 +41,7 @@ that they were defined. There must be at least one flow frame on every page.}} \storeglosentry{static}{name=static frame,description={Frames -in which text is fixed in place. Static frames are usually -cleared after each page. The contents are fixed until +in which text is fixed in place. The contents are fixed until explicitly changed.}} \storeglosentry{dynamic}{name=dynamic frame,description={Frames @@ -236,9 +236,10 @@ backcolor=blue,textcolor=white,style=footstyle,pages=none} \ffswapoddeven*{main} \dfswapoddeven*{chaphead} -\title{Creating Flow Frames for Posters, Brochures or Magazines using flowfram.sty v 1.0} +\title{Creating Flow Frames for Posters, Brochures or +Magazines using flowfram.sty v 1.02} \author{Nicola L. C. Talbot} -\date{26th July 2005} +\date{24th November 2005} \pagenumbering{alph} \maketitle @@ -283,11 +284,14 @@ or magazines or any other form of document that does not conform to the standard one or two column layout. The \sty{flowfram} package provides three types of \gls{frame}: -\gls{flow}s, \gls{static}s and \gls{dynamic}s. +\gls{flow}s, \gls{static}s and \gls{dynamic}s, all rectangular +in shape with dimensions and positions specified by the +user\footnote{Can I have arbitrary shaped frames? See +\autoref{itm:parshape} on page~\pageref{itm:parshape}}. The main contents of the document environment flow from -one defined \gls{flow} to the next in the order of definition, +one \gls{flow} to the next in the order of definition, whereas the contents of the static and dynamic frames -are set explicity using commands described in +are set explicitly using commands described in \autoref{sec:modattr}. Note that unless otherwise stated, all co-ordinates are relative to the bottom left hand corner of the \gls{typeblock}. If you have @@ -324,7 +328,7 @@ does this. The \sty{flowfram} package works fine with however \appname{ps2pdf} and \appname{dvipdf} both seem to cause a slight left shift in the page which may result in a vertical white band on the right side of the page. -This problem does not seem to occur with Acrobat Disiller. +This problem does not seem to occur with Acrobat Distiller. You should load \sty{flowfram} \emph{after} \sty{hyperref} and any colour package (e.g.\ \sty{color}). @@ -343,7 +347,8 @@ for the \gls{frame} and \meta{idl} is the \IDL\ for that \texttt{S} (\gls{static}) or \texttt{D} (\gls{dynamic}). Markers of the form: [M:\meta{idn}] indicate that the \gls{bbox} is the area taken up by the margin for \gls{flow} -with \IDN\ \meta{idn}. +with \IDN\ \meta{idn}. Note that even if a \gls{frame} +has been rotated, the \gls{bbox} will not be rotated. If you want to show or hide specific types of bounding boxes, you can use one of the following commands: @@ -386,6 +391,7 @@ large black rectangles obscuring your text, instead of the pale background colour you were hoping for.) \section{Frame Stacking Order} +\label{sec:stacking} The material on each page is placed in the following order: \begin{enumerate} @@ -404,7 +410,13 @@ package option has been used. This ordering can be used to determine if you want something to overlay or underlay everything else on the page. - +Note that the \gls{frame}s do not interact with each other. If +you have two or more overlapping frames, the text in each +\gls{frame} will not attempt to wrap around the other +frames, but will simply overwrite +them.\footnote{Can I have arbitrary +shaped frames? See \autoref{itm:parshape} on +page~\pageref{itm:parshape}.} \chapter{Defining New Frames} @@ -457,16 +469,11 @@ By default, the \gls{flow} will not have a border, but the starred form, \cmdname{newflowframe*}, will place a plain border around the \gls{flow}. -Note that there must be at least one \gls{flow} -defined on every page of your document. If there are no -\useGlosentry{flow}{flow frames} defined at the start of your -document, a single \gls{flow} will be defined, emulating -one column mode. If the document continues beyond the last -defined \gls{flow}, again a single \gls{flow} will be -defined, emulating one column mode. If there exists a page -in the middle of the document for which there is no \gls{flow} -defined, an error will be generated, and you will lose some -of your text. +Note that if the document continues beyond the last +defined \gls{flow} (for example, the \gls{flow}s have only +been defined on pages~1 to~10, but the document contains 11 +pages) then a single \gls{flow} will be defined, +emulating one column mode for all subsequent pages. In this document, I have used the command \begin{verbatim} @@ -500,11 +507,15 @@ do \cmdname{cleardoublepage}. \section{Static Frames} A \gls{static} is a rectangular area in which text neither -flows into, nor flows out of. The contents must be set -explicitly, and once set, the contents of the \gls{static} will -remain the same on each page until it is explicitly -changed. Thus, a \gls{static} can be used, for example, to make -a company logo appear in the same place on every page. +flows into, nor flows out of\footnote{By ``neither flows into nor +flows out of'' I mean you have to explicitly set the contents of +this frame. Note that it may appear to contain text if another +frame overlaps it, but this text belongs to the other frame.}. +The contents must be set explicitly, and once set, the contents +of the \gls{static} will remain the same on each page until it is +explicitly changed. Thus, a \gls{static} can be used, for +example, to make a company logo appear in the same place on every +page. A new \gls{static} is defined using the command:\\[10pt] \cmdname{newstaticframe}\verb/[/\meta{page list}\verb+]{+% @@ -719,9 +730,9 @@ if the document is two-sided. \item[\key{label}=\meta{text}] Assign an IDL to the \gls{frame}. (If you do not specify a label when you first define a \gls{frame} -it wil be given a label identical to its \IDN.) This key is +it will be given a label identical to its \IDN.) This key is provided to allow the user to label frames that have been -generate by certain predefined layout commands described +generated by certain predefined layout commands described in \autoref{sec:layouts}. \item[\key{border}=\meta{style}] The style of the border around the @@ -818,7 +829,7 @@ for \gls{flow}s. \item[\key{clear}=\meta{boolean}] If this value is set, the static or dynamic frame will be cleared at the start of the -next page, otherwise it will only be clear on the next +next page, otherwise it will only be cleared on the next occurrence of \cmdname{setstaticcontents} or the \env{staticcontents} environment, or the \cmdname{setdynamiccontents}, depending on the frame type. @@ -848,6 +859,10 @@ which will make the text for all the dynamic frames come out in bold. To unset a style, do \verb/style=none/. This setting is only available for \gls{dynamic}s. +\item[\key{angle}=\meta{n}] Rotate the contents of the +\gls{frame} by \meta{n} degrees (new to +version 1.02). Note that the \gls{bbox}es will not +appear rotated. \end{description} \chapter{Predefined Layouts} @@ -1138,7 +1153,7 @@ More general version of \cmdname{htwotoneright} but for To make a single \gls{static} covering the entire page, use: \cmdname{makebackgroundframe}\verb"["\meta{pages}\verb"]["\meta{IDL}\verb"]". Note that this \gls{static} should be created -before any other \gls{static} as it will obscur all other +before any other \gls{static} as it will obscure all other \gls{static}s created before it if it is given a background colour. @@ -1207,8 +1222,12 @@ title---default), \pkgopt{ttbnotitle} (don't show the title), (don't show the number---default). If you want thumbtabs in your document, you need to use -the command -\cmdname{makethumbtabs}\verb"["\meta{y offset}\verb"]{"\meta{height}\verb"}["\meta{section type}\verb"}" in the document +the command +\begin{center} +\cmdname{makethumbtabs}\verb"["\meta{y +offset}\verb"]{"\meta{height}\verb"}["\meta{section type}\verb"}" +\end{center} +in the document preamble. By default, the topmost thumbtab is level with the top of the \gls{typeblock}, but can be shifted vertically using the first optional argument \meta{y offset}. Each @@ -1405,6 +1424,64 @@ are many different ways of formatting the value of a counter would be impossible to write an algorithm to do this for some arbitrary format. \end{enumerate} + +\item Can I have an arbitrarily shaped \gls{frame}? +\label{itm:parshape} + +No. All frames are rectangular, however within a frame +you may use commands such as \TeX's \cmdname{parshape} to +create a non rectangular paragraph. (See the sample file +\texttt{news.tex} for an example.) + +\item Why has the text from my \gls{flow} appeared in a +\gls{static} or \gls{dynamic}? + +Assuming you haven't inadvertently set that text as the contents +of the static or dynamic frame, the frames are most likely +overlapping (see \autoref{sec:stacking}). +In an attempt to clarify what's going on, suppose you have +defined a \gls{static}, a \gls{dynamic} and two \gls{flow}s. The +following is an approximate\footnote{The pedantic may point out +that \TeX\ may make several attempts to fill in the flow frames +depending on penalties and so on.} analogy: \TeX\ has a sheet of +paper on the table, and has pencilled\footnote{actually it hasn't +drawn anything really, but it has in its mind's eye.} in a +rectangle denoting the \gls{typeblock}. The paper is put to one +side for now. \TeX\ also has four rectangular sheets +of transparent paper. The first (which I shall call sheet~1) +represents the \gls{static}, the next two (which I shall call +sheets~2 and~3) represent the \gls{flow}s, and the last one +(which I shall call sheet~4) represents the \gls{dynamic}. +\TeX\ starts work on filling sheet~2 with the document text. +Once it has put as much text on that sheet as it considers +possible (according to its views on aesthetics), it puts sheet~2 +into the ``in tray'', and then continues on sheet~3. While it's +filling in sheets~2 and~3, if it encounters a command or +environment that tells it what to put in the \gls{static}, +it fills in sheet~1 and then puts sheet~1 into the ``in tray'' and +resumes where it left off on sheet~2 or~3. Similarly, if +it encounters a command that tells it what to put in the +\gls{dynamic}, it stops what it's doing, fills in sheet~4, then +puts sheet~4 into the ``in tray'', and resumes where it left off. +Only when it has finished sheet~3 (the last \gls{flow} defined +on that page), will it gather together all +the transparent sheets, and fix them onto the page starting +with sheet~1 through to sheet~4, measuring the bottom left hand +corner of each transparent sheet relative to the bottom left hand +corner of the \gls{typeblock}. \TeX\ will then put that page +aside, and start work on the next page. If two or more of the +transparent sheets overlap, you will see through the top one into +the one below (unless of course the top one has been painted +over, either by setting a background colour, or by adding an +image that has a non-transparent background.) + +Note that it's also possible that the overlap is caused by an +overfull hbox that's causing the text to poke out the side of the +\gls{flow} into a neighbouring \gls{frame}. + +\item Why do I get lots of overfull hbox messages? + +Probably because you have narrow \gls{frame}s. \end{enumerate} \section{Unexpected Output} @@ -1436,6 +1513,22 @@ of every page. This occurs if you use \appname{ps2pdf} of \appname{dvipdf}. Try using \appname{pdflatex} instead. +\item I don't have any output. + +All your \gls{flow}s are empty. \TeX\ doesn't put the +frames onto the page until it has finished putting text +into the \gls{flow}s. So if there is no text to go in the +\gls{flow}s it won't output the page. If you only want the +\gls{static}s or \gls{dynamic}s filled in, and nothing +outside of them, just do \verb|\mbox{}|. This will put +an invisible something with zero area into your +\gls{flow}, but it's enough to convince \TeX\ that the +document contains some text. + +\item The last page hasn't appeared. + +See the previous answer. + \end{enumerate} \section{Error Messages} @@ -1507,12 +1600,6 @@ The specified style \meta{style} must be the name of a command without the preceding backslash. It is possible that you have mis-spelt the name, or you have forgotten to define the command. -\item \verb/No flow frames defined on page /\meta{n}\verb+. Text lost+ - -You can not have a page in the middle of the document that has -no \gls{flow} defined, as it messes up \TeX's output routine. -You will loose some of the document's text. - \item \verb/Argument of \fbox has an extra }/ This error will occur if you do, say, \verb/border=\fbox/ @@ -1534,6 +1621,22 @@ wrong with the toc (table of contents), ttb (thumbtab) or aux (auxiliary) files in the previous run. Try deleting them, and try again. +\item \verb/Undefined control sequence/ +\begin{verbatim} +\color ...vevmode \csname fi\endcsname }\@ldc@l@r +\end{verbatim} + +This seems to happen when the \texttt{draft} option is used without +a colour package, in conjunction with PDF\LaTeX. It +doesn't seem to happen with \LaTeX. For some reason with +PDF\LaTeX\ the \cmdname{color} command is defined in the +begin document hook, but not the command +\cmdname{@ldc@l@r} which is the cause of this error +message. You can avoid this error message by including +the \sty{color} package. You can use the +\texttt{monochrome} option if you don't want any colour +in your document. + \end{enumerate} \disablethumbtabs |