summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/flowfram/samples/sample-poster.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/flowfram/samples/sample-poster.tex')
-rw-r--r--macros/latex/contrib/flowfram/samples/sample-poster.tex355
1 files changed, 355 insertions, 0 deletions
diff --git a/macros/latex/contrib/flowfram/samples/sample-poster.tex b/macros/latex/contrib/flowfram/samples/sample-poster.tex
new file mode 100644
index 0000000000..c8d2784525
--- /dev/null
+++ b/macros/latex/contrib/flowfram/samples/sample-poster.tex
@@ -0,0 +1,355 @@
+ % This file is public domain.
+
+\documentclass[a0]{a0poster}
+
+\usepackage{color}
+\usepackage{mathptmx}
+\usepackage{courier}
+\usepackage[scaled=0.92]{helvet}
+\usepackage{url}
+\usepackage{flowfram}
+
+
+\setlength{\columnsep}{2cm}
+
+\NcolumnStop{4}{0.2\textheight}
+\setstaticframe{\value{maxstatic}}{label={title},backcolor=[cmyk]{0.64,0,0.95,0.40},textcolor=white}
+
+\insertvrule{flow}{2}{flow}{3}
+
+\setflowframe{3,4}{pages={>1}}
+
+\computeflowframearea{3,4}
+\twocolumnSbottominarea[1]{0.5\ffareaheight}{\ffareawidth}{\ffareaheight}{\ffareax}{\ffareay}
+\setstaticframe{\value{maxstatic}}{label={info},backcolor=[cmyk]{0.26,0,0.76,0},clear}
+
+\inserthrule*[0.5\columnsep]{flow}{5}{static}{info}
+
+\setallflowframes{backcolor=[cmyk]{0.15,0,0.69,0}}
+
+\newcommand{\sty}[1]{\textsf{#1}}
+\newcommand{\env}[1]{\textsf{#1}}
+\newcommand{\cmdname}[1]{\texttt{\symbol{92}#1}}
+\newcommand{\meta}[1]{\textnormal{\textless\textit{#1}\textgreater}}
+
+
+\begin{document}
+\begin{staticcontents*}{title}
+\begin{center}
+\bfseries\veryHuge flowframe.sty : Creating Posters, Magazines or Brochures in \LaTeX
+\vskip1cm
+\huge Nicola L. C. Talbot
+\vskip2ex
+\normalsize \url{http://www.dickimaw-books.com/}
+\end{center}
+\end{staticcontents*}
+
+\pagestyle{empty}
+
+\begin{staticcontents*}{info}
+\begin{staticfigure}
+
+\begin{verbatim}
+ % Make the distance between columns = 1.5cm
+ \setlength{\columnsep}{2cm}
+
+ % Make a 4 column layout with a static frame on top.
+ % The static frame has height = 0.2\textheight
+ \NcolumnStop{4}{0.2\textheight}
+
+ % give the static frame a label to make it easier to keep track of
+ \setstaticframe{\value{maxstatic}}{label={title},backcolor=[cmyk]{0.64,0,0.95,0.40},textcolor=white}
+
+ % On the first page, replace the 3rd and 4th columns
+ % with two shorter columns with a static frame underneath
+ \setflowframe{3,4}{pages={>1}}
+
+ % The area taken up by the 3rd and 4th columns is given by
+ \computeflowframearea{3,4}
+
+ % Set up new frames in this area
+ \twocolumnSbottominarea[1]{0.5}{\ffareawidth}{\ffareaheight}{\ffareax}{\ffareay}
+
+ % Assign a label to the last static frame to be created, and set background colour
+ \setstaticframe{\value{maxstatic}}{label={info},backcolor=[cmyk]{0.26,0,0.76,0}}
+
+ % Set the background colour for all flow frames
+ \setallflowframes{backcolor=[cmyk]{0.15,0,0.69,0}}
+\end{verbatim}
+
+\caption{The commands used to define the frames for this document}
+\protect\label{fig:thisdoc}
+\end{staticfigure}
+\end{staticcontents*}
+
+This is a modified version of the manual for the \sty{flowfram}
+package. It is intended to illustrated what can be done. See the
+full manual (ffuserguide.pdf) for
+a comprehensive description, as this may now be out of date. The commands used to define the frames for
+this document are shown in Figure~\ref{fig:thisdoc}.
+If the columns are very narrow, it may be better to
+use \cmdname{raggedright}, otherwise \TeX\ may have a
+problem working out the line breaks.
+
+\section{Introduction}
+
+The \sty{flowfram} package is designed to enable you to create
+frames in a document such that the
+contents of the \env{document} environment flow from one
+frame to the next in the order that they were defined.
+This is useful for creating posters
+or magazines or any other form of document that does not
+conform to the standard one or two column layout.
+
+\section{Setting up Frames}
+
+The \sty{flowfram} package provides three types of frame:
+{flow frames}, {static
+frames} and {dynamic frames}.
+
+\subsection{Flow Frames}
+
+The flow frame is the principle type of frame.
+The text of the \env{document} environment will flow from
+one frame to the next in order of definition. Each
+flow frame has an associated width, height,
+position on the page, and optionally a border.
+
+It is recommended that all the flow frames in a document
+have the same width, otherwise problems may occur
+when a paragraph spans to flow frames of unequal
+widths. This is because \TeX's output routine does not
+register the change in \cmdname{hsize} until it reaches
+a paragraph break. If it is absolutely necessary for
+flow frames to have unequal widths, judicious use of
+\cmdname{framebreak} is required.
+
+\subsection{Static Frames}
+
+A static frame 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 static frame will
+remain the same on each page until it is explicitly
+changed. Thus, a static frame can be used, for example, to make
+a company logo appear in the same place on every page.
+
+\subsection{Dynamic Frames}
+
+A dynamic frame is similar to a static frame, but its contents
+are re-typeset on each page. (A static frame stores its
+contents in a savebox, whereas a dynamic frame stores its
+contents in a macro).
+
+\section{Frame Attributes}
+\label{sec:modattr}
+
+Once you have defined the {flow frames}, {static frames} and
+{dynamic frames}, their attributes can be changed.
+The three types of frame mostly have the
+same set of attributes, but some are specific to a certain type.
+The available attributes are as follows
+(\textsuperscript{\textbf{F}} indicates the key is
+only available for {flow frames},
+\textsuperscript{\textbf{S}} indicates the key is only available
+for {static frames}
+and \textsuperscript{\textbf{D}} indicates the key
+is only available for {dynamic frames}):
+
+\begin{description}
+\item[width=\meta{length}] The width of the frame.
+
+\item[height=\meta{length}] The height of the frame.
+
+\item[x=\meta{length}] The x-coordinate of the frame.
+
+\item[y=\meta{length}] The y-coordinate of the frame.
+
+\item[border=\meta{style}] The style of the border around the
+frame, this can take the values: \texttt{none} (no border),
+\texttt{plain} (plain border) or the name of a \LaTeX\
+frame making command without the preceding backslash.
+The value \texttt{fbox} is equivalent to \texttt{plain}.
+
+\item[offset=\meta{offset}] The border offset, if it is a
+user-defined border. This is the distance from the outer
+edge of the left hand border to the left edge of the
+bounding box of the text inside the border. The \sty{flowfram}
+package is able to compute the border for
+known frame making commands.
+If you define your own frame making command, you may need to
+specify the offset explicitly, or the frames
+may end up shifted to the right or left.
+
+\item[bordercolor=\meta{colour}] The colour of the border
+if you are using a standard frame making command.
+The colour can either be specified as, e.g.\ \texttt{green},
+or including the colour model, e.g. \verb/[rgb]{0,1,0}/.
+
+\item[textcolor=\meta{colour}] The text colour for that
+frame. Again, the colour can either be specified as,
+e.g.\ \texttt{green}, or including the colour model,
+e.g. \verb/[rgb]{0,1,0}/.
+
+\item[pages=\meta{page list}] The {list of
+pages} for which the frame
+should appear. This can either have the values: \texttt{all},
+\texttt{even}, \texttt{odd} or \texttt{none} (the latter
+removes the frame from that point on---useful if you
+have multiple pages with the same number), or it can be a
+comma-separated list of single pages, or
+{page ranges}.
+
+\item[margin=\meta{side}\textsuperscript{F}] The side of
+the flow frame that its corresponding margin should go on. This
+can take the values \texttt{left} or \texttt{right}.
+
+\item[clear=\meta{boolean}\textsuperscript{S}] If this value
+is set, the static frame will be cleared at the start of the
+next page.
+
+\item[style=\meta{cmd}\textsuperscript{D}] This should be
+the name of a command \emph{without} the preceding backslash,
+to be applied to the contents of the specified dynamic frame.
+The command may either be a declaration, for example \verb/style=large/
+which will set the contents of all the dynamic frames in a
+large font, or it can be a command that takes a single argument,
+for example \verb/style=textbf/
+which will make the text for all the dynamic frames come out in
+bold. To unset a style, do \verb/style=none/.
+
+\end{description}
+
+\section{Miscellaneous}
+
+\subsection{Page Layout}
+
+The \sty{flowfram} package has the package option \texttt{draft}
+which will draw the {bounding boxes} for
+each frame defined. At the bottom right of each
+bounding box (except for the bounding box denoting the
+typeblock), a marker will be shown to indictate the type
+of frame, its IDN and its IDL.
+
+You can see the layout for the current page (irrespective of
+whether or not the \texttt{draft} option has been set) using
+the command:\newline
+\cmdname{flowframeshowlayout}
+
+The headers and footers will appear as usual (but will not
+be shown in draft mode), according to the format given by
+\cmdname{pagestyle}.
+
+\subsection{Frame Stacking Order}
+
+The material on each page is placed in the following order:
+\begin{enumerate}
+\item Each static frame defined for that page in ascending
+order of IDN.
+
+\item Each flow frame defined for that page in ascending
+order of IDN.
+
+\item Each dynamic frame defined for that page in ascending
+order of IDN.
+
+\item {Bounding boxes} if the \texttt{draft}
+package option has been used.
+\end{enumerate}
+
+This ordering can be used to determine if you want something
+to overlay or underlay everything else on the page.
+
+\subsection{Prematurely Ending a Flow Frame}
+
+You can force text to move immediately to the next defined
+flow frame using one of the standard \LaTeX\ page breaking commands
+which work in an analogous way to the way they
+work in standard two column mode.
+
+The command \cmdname{framebreak} is provided for situations
+where a paragraph spans two flow frames
+of different widths, as \TeX's output routine does not
+adjust to the new value of \cmdname{hsize} until the last
+paragraph of the previous frame has ended. As a
+result, the end of the paragraph at the beginning of the new
+flow frame retains the width of the previous flow frame.
+
+If you want to start a new page, rather than simply move to the
+next frame, use the command\newline
+\cmdname{finishthispage}.
+
+\subsection{Floats}
+
+Since floats (such as figures and tables) can only go in
+{flow frames}, this package provides
+the additional environments:
+\env{staticfigure} and
+\env{statictable} which can be used in static frames
+and dynamic frames. Unlike their \env{figure} and
+\env{table} counterparts, they are fixed in place, and
+so do not take an optional placement specifier. The
+\cmdname{caption} and \cmdname{label} commands can
+be used within \env{staticfigure} and \env{statictable} as
+usual.
+
+The standard \env{figure} and \env{table} commands will
+behave as usual in the flow frames, but their starred versions,
+\env{figure*} and \env{table*} behave no differently
+from \env{figure} and \env{table}.
+
+\subsection{Global Values}
+
+The following macros can be changed using \cmdname{renewcommand}:
+
+\begin{itemize}
+\item \cmdname{setffdraftcolor}
+
+This sets the colour of the bounding box
+when it is displayed in draft mode.
+
+\item
+\cmdname{setffdrafttypeblockcolor}
+
+This sets the colour of
+the bounding box of the typeblock when it is displayed
+in draft mode.
+
+\item \cmdname{fflabelfont}
+
+This sets the font size for the bounding box markers in
+draft mode.
+
+\end{itemize}
+
+The following are lengths, which can be changed using
+\cmdname{setlength}:
+
+\begin{itemize}
+\item \cmdname{fflabelsep}
+
+This is the distance from the right hand side of the
+bounding box at which to place the bounding box marker.
+
+\item \cmdname{flowframesep}
+
+This is the gap between the text of the frame and
+its border, for the standard border types.
+
+\item \cmdname{flowframerule}
+
+This is the width of the frame's border, if using
+a border given by a frame making command that uses \cmdname{fboxsep}
+to set its border width.
+
+\item \cmdname{columnsep}
+
+This is the horizontal distance between flow frames when using one of the
+\cmdname{Ncolumn} type of commands
+
+\item \cmdname{vcolumnsep}
+
+This is the vertical distance between the flow frames and the static or
+dynamic frame when using one of the \cmdname{Ncolumntop} type of commands.
+\end{itemize}
+
+\end{document}