\def\filedate{1999/07/05}
\def\fileversion{1.0}
%
%
%\iffalse
% class `nonfloat' to be used with LaTeX 2e
% Copyright (C) 1999 Kai Rascher. All rights reserved.
%
% Copying of this file is authorized only if either
% (1) you make absolutely no changes to your copy, including name, or
% (2) if you do make changes, you name it something other than
%     nonfloat.* .
% This restriction helps ensure that all files developed
% are identical.
%
% Error reports for UNCHANGED versions please to:
%
%                         Kai Rascher
%                         Am Remenhof 17a
%                         38104 Braunschweig
%                         Germany
%                E-Mail:  <rascher@ifn.ing.tu-bs.de>
%
%\fi
%
%\flushbottom
%
%\parindent0mm
%\parskip3mm
%\title{ Nicht-gleitende Tabellen und Bilder\\
%        in \LaTeXe\\
%        --~nonfloat\thanks{Diese Datei
%        hat die Versionsnummer \fileversion\ --\
%        letzte "Uberarbeitung \filedate.}~~--}
%
%\author{ Kai Rascher\\
%         Am Remenhof 17a\\
%         D--38104 Braunschweig\\
%         {\tt rascher@ifn.ing.tu-bs.de}}
%
%\date{Version~\fileversion}
%
%\maketitle
%
%\section{Kurzinformation}
%
%Die Positionierung von Bildern und Tabellen in \LaTeXe-Dokumenten wirft
%immer wieder fragen auf. Insbesondere wenn Tabellen und Bilder nicht gleiten
%sollen, aber dennoch ein numerierte Tabellen"uberschrift bzw.\
%Bildunterschrift gew"unscht wird, wird h"aufig versucht, dies "uber den
%Parameter [h] zu erreichen. Da die Parameter f"ur Gleitobjekte optional und
%f"ur \LaTeXe\ nicht bindend sind, erreicht man durch die Angabe von [h]
%i.\,a.\ nicht die Plazierung der Tabelle oder des Bildes an der mit
%\glqq here\grqq\ angegebenen Stelle.
%
%Als Alternative kann auf das \LaTeXe-Paket \textsf{float} zur"uckgegriffen
%werden. Dieses Paket, welches die Definition weiterer Gleitobjekte beispielsweise
%f"ur Programm-Code oder Algorithmen erm"oglicht, bietet den zus"atzlichen
%Parameter [H]. Damit lassen sich Gleitobjekte zwar \glqq Here\grqq\ oder
%am Seitenanfang der n"achsten Seite plazieren, die Beschriftungen sind aber
%nur unterhalb des Gleitobjekts m"oglich. Typographisch richtig ist jedoch, da"s
%Tabellen stets "Uberschriften haben.
%
%Das Paket \textsf{nonfloat} greift die in \cite{epslatex,Reichert} gemachten
%Empfehlungen auf und definiert verschiedene \verb|\XXXcaption|-Befehle f"ur
%nicht-gleitende Objekte.
%
%Weiterhin erfolgt eine Anpassung der Plazierungsparameter \verb|\textfraction|,
%\verb|\topfraction|, \verb|\bottomfraction| und \verb|\floatpagefraction| nach
%Vorgaben in \cite{epslatex}. Zus"atzlich werden die L"angenangaben f"ur die
%Plazierung von Gleitobjekten auf separaten \glqq Floatpages\grqq\ so
%angepa"st, da"s keine vertikale Zentrierung mehr stattfindet.
%
%Tabellen und Bilder werden standardm"a"sig nicht zentriert, obwohl ein einzeiliger
%\verb|\caption|-Eintrag zentriert ausgegeben wird. In \textsf{nonfloat} wird nach
%\cite{Reichert2} eine entsprechende Anpassung vorgenommen. Dabei wird auch der
%vertikale Abstand von Tabellen"uberschriften analog zu den Bildunterschriften
%festgelegt.
%
%Aus \cite{epslatex} wurde die \verb|narrow|-Umgebung "ubernommen. Mit dieser
%Umgebung kann nicht nur ein schmaler Textbereich gesetzt werden, durch die
%Angabe negativer L"angen ist es m"oglich, sehr breite Bilder, Tabellen o.\,"a.\
%in den linken oder rechten Rand hineinragen zu lassen.
%
%\section{Verwendung}
%\subsection{Laden der Style-Option}
%Um die Befehle des \textsf{nonfloat}-Pakets verwenden zu k"onnen, mu"s die
%Style-Option mit einem Aufruf
%
%\verb|\usepackage{nonfloat}|
%
%nach der Deklaration der Dokumentenklasse mit \verb|\documentclass| geladen
%werden.
%
%\subsection{Befehle}
%Nach dem Laden stehen neben dem Befehl \verb|\caption| weitere 2~Befehle
%zur Erzeugung von Beschriftungen f"ur nicht-gleitende Tabellen und Bilder
%zur Verf"ugung.
%\\[\intextsep]
%\begin{minipage}{\linewidth}
%\centering%
%\tabcaption{Befehle f"ur Tabellen"uber- und Bildunterschriften}%
%\label{tab:Befehle}%
%\begin{tabular}{*{2}{l}}
%   "Uberschrift f"ur nicht-gleitende Tabellen & \verb|\tabcaption|\\
%   Unterschrift f"ur nicht-gleitende Bilder  & \verb|\figcaption|
%\end{tabular}
%\end{minipage}
%\\[\intextsep]
%Zur Realisierung wurde ein Befehl \verb|\topcaption| definiert, der den gleichen
%vertikalen Abstand zwischen einer "Uberschrift und dem Objekt einf"ugt, wie dies
%bei Objektunterschriften mit \verb|\caption| erfolgt. Der Befehl
%\verb|\topcaption| wird innerhalb des \LaTeXe-Dokumentes nicht ben"otigt.
%
%Die Befehle \verb|\tabcaption| und \verb|\figcaption| greifen auf die Befehle
%\verb|\topcaption| bzw.\ \verb|\caption| zur"uck, sind aber f"ur die Verwendung
%au"serhalb von Gleitumgebungen gedacht. Beispiele sind in
%Abschnitt~\ref{Beispiele} zu finden.
%
%\subsection{Anpassung der Plazierungsparameter}
%\tablename~\ref{tab:Plazierung} umfa"st die neu definierten Werte f"ur die
%Plazierungsparameter sowie ihre bisherigen \LaTeXe-Standardwerte. Au"serdem
%sind Ungleichungen f"ur empfohlene Wertebereiche gegeben \cite{epslatex}.
%\\[\intextsep]
%\begin{minipage}{\linewidth}
%\centering%
%\tabcaption{"Anderung der Parameter f"ur die Gleitobjektplazierung}%
%\label{tab:Plazierung}%
%\small
%\renewcommand{\arraystretch}{1.25}
%\begin{tabular}{@{}l*{2}{c}l@{}}\hline
%   Name                      & Wert       & Default      & Empfehlung\\ \hline
%   \verb|\textfraction|      & 0.15       & 0.2          & $\verb|\textfraction| \ge 0.15$\\
%   \verb|\topfraction|       & 0.85       & 0.7          & $\verb|\topfraction| \le 1-\verb|\textfraction|$\\
%   \verb|\bottomfraction|    & 0.65       & 0.3          & $\verb|\bottomfraction| < \verb|\topfraction|$\\
%                             &            &              & $\verb|\bottomfraction| \le 1-\verb|\textfraction|$\\
%   \verb|\floatpagefraction| & 0.60       & 0.5          & $\verb|\floatpagefraction| \le \verb|\topfraction|-0.05$\\
%                             &            &              & $\verb|\floatpagefraction| \le 1-\verb|\textfraction|$\\ \hline
%\end{tabular}
%\end{minipage}
%
%\subsection{Anpassung der table- und figure-Umgebung}
%Innerhalb der \verb|table|"~ und \verb|figure|"~Umgebung wird der Inhalt
%nicht zentriert gesetzt, obwohl gleichzeitig eine einzeilige Beschriftung
%zentriert ausgegeben wird. Die Umgebungen wurden daher umdefiniert, wobei
%dar"uber hinaus die vertikalen Abst"ande f"ur Tabellen"uberschriften analog
%zu Bildunterschriften angepa"st wurden \cite{Reichert2}.
%
%\subsection{Anpassung vertikaler Zwischenr"aume bei \glqq Gleitseiten\grqq}
%Wenn Gleitobjekte nicht innerhalb des Textes, sondern auf extra Seiten
%(Gleitseiten~--~Floatpages) angeordnet werden, zentriert \LaTeXe\ die Gleitobjekte
%vertikal. Dies wird durch die in \tablename~\ref{tab:Gleitseiten} angegebenen neuen
%Werte verhindert. Werden mehrere Gleitobjekte auf einer Gleitseite plaziert,
%wird nun der gleiche vertikale Zwischenraum wie bei Gleitobjekte auf
%anderen Seiten eingef"ugt. Die bisherigen Defaultwerte sind ebenfalls angegeben.
%\\[\intextsep]
%\begin{minipage}{\linewidth}
%\centering%
%\tabcaption{"Anderung der vertikalen Zwischenr"aume bei Gleitseiten}%
%\label{tab:Gleitseiten}%
%\small%
%\renewcommand{\arraystretch}{1.25}%
%\begin{tabular}{@{}*{3}{l}@{}}\hline
%   Name           & neuer Wert                     & Defaultwert\\ \hline
%   \verb|\@fptop| & \verb|0pt|                     & \verb|0pt plus 1.0fil|\\
%   \verb|\@fpsep| & \verb|20pt plus 2pt minus 2pt| & \verb|8pt plus 2.0fil|\\
%   \verb|\@fpbot| & \verb|0pt|                     & \verb|0pt plus 1.0fil|\\ \hline
%\end{tabular}
%\end{minipage}
%\\[\intextsep]
%
%Die Einheit \verb|fil| erm"oglicht das Einf"ugen vertikalen Zwischenraums
%beliebiger L"ange. Dies ist mit dem Befehl \verb|\vfill| vergleichbar.
%Durch Multiplikation von \verb|fil| wird eine entsprechend proportionale
%Aufteilung des Freiraums erzeugt.
%
%"Anderungen an den in \tablename~\ref{tab:Gleitseiten} gegebenen L"angenparametern
%m"ussen innerhalb eines \LaTeXe-Dokumentes mit den Befehlen \verb|\makeatletter|
%und \verb|\makeatother| eingerahmt werden, damit das at-Zeichen (\verb|@|)
%in den Parameternamen richtig verarbeitet wird.
%
%\subsection{Umgebung}
%Zum Setzen sehr breiter Bilder oder Tabellen kann die \verb|narrow|-Umgebung
%mit negativen L"angenangaben innerhalb oder au"serhalb von Gleitobjekten
%verwendet werden. Mit
%\begin{verbatim}
%   \begin{narrow}{-1in}{0in}
%      ...
%   \end{narrow}
%\end{verbatim}
%wird der Inhalt der \verb|narrow|-Umgebung so gesetzt, da"s er um 1\,in in den
%linken Rand ragt und b"undig mit dem rechten Rand abschlie"st. Soll auch in den
%rechten Rand geschrieben werden, mu"s die zweite L"angenangabe ebenfalls negativ
%sein.
%
%\subsection{Beispiele}
%\label{Beispiele}
%\subsubsection{Gleitende Tabelle}
%\begin{verbatim}
%  \begin{table}[htbp]
%    \caption{Tabellen"uberschrift}%
%    \label{tab:ueberschrift}%
%    \begin{tabular}{...}
%      ...
%    \end{tabular}
%  \end{table}
%\end{verbatim}
%
%\subsubsection{Gleitendes Bild}
%\begin{verbatim}
%  \begin{figure}[htbp]
%    \includegraphics[width=0.8\linewidth,clip=]{input.eps}%
%    \caption{Bildunterschrift}%
%    \label{fig:input.eps}%
%  \end{figure}
%\end{verbatim}
%
%\pagebreak
%\subsubsection{Nicht-gleitende Tabelle}
%\begin{verbatim}
%  \\[\intextsep]
%  \begin{minipage}{\linewidth}
%    \centering%
%    \tabcaption{Befehle f"ur Tabellen"uber- und Bildunterschriften}%
%    \label{tab:Befehle}%
%    \begin{tabular}{*{2}{l}}
%       ...
%    \end{tabular}
%  \end{minipage}
%  \\[\intextsep]
%\end{verbatim}
%Die Angabe von \verb|\\[\intextsep]| f"ugt genau den vertikalen Zwischenraum ein,
%der auch bei Gleitobjekten verwendet wird.
%
%\subsubsection{Nicht-gleitendes Bild}
%\begin{verbatim}
%  \\[\intextsep]
%  \begin{minipage}{\linewidth}
%    \centering%
%    \includegraphics[width=0.8\linewidth,clip=]{input.eps}%
%    \figcaption{Bildunterschrift}%
%    \label{fig:input.eps}%
%  \end{minipage}
%  \\[\intextsep]
%\end{verbatim}
%
%
%\begin{thebibliography}{99}
%  \bibitem{epslatex}  Reckdahl, Keith: \emph{Using Imported Graphics in \LaTeXe},
%                      Version~2.0, 15.~Dezember~1997.
%  \bibitem{Reichert}  Reichert, Axel:
%                      \mbox{\verb|<wdafcrw8a0.fsf@mpie-duesseldorf.mpg.de>|}
%                      Message-ID im Usenet
%  \bibitem{Reichert2} Reichert, Axel:
%                      \mbox{\verb|<wdso73fr22.fsf@mtntc1.mpie-duesseldorf.mpg.de>|}
%                      Message-ID im Usenet
%\end{thebibliography}
%\enddocument
%
%
%
%\begin{macrocode}
%
%  nonfloat BEFEHLE
%
%<*style>
\def\filename{nonfloat.sty}
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\RequirePackage{ifthen}[1994/06/01]
%
% Von Axel Reichert Message-ID: <wdafcrw8a0.fsf@mpie-duesseldorf.mpg.de>
% Definition eines \topcaption-Befehls mit angepa"sten Abst"anden, wenn
% das zu beschriftende Objekt unterhalb der Beschriftung steht.
\newcommand{\topcaption}{%
  \setlength{\@tempdima}{\abovecaptionskip}%
  \setlength{\abovecaptionskip}{\belowcaptionskip}%
  \setlength{\belowcaptionskip}{\@tempdima}%
  \caption%
}
%
% Definition von \figcaption zur Nutzung au"serhalb von Gleitumgebungen;
% aus epslatex.ps
\newcommand{\figcaption}{\def\@captype{figure}\caption}
%
% Definition von \tabcaption zur Nutzung au"serhalb von Gleitumgebungen
% Es wird \topcaption verwendet, damit die vertikalen Zwischenr"aume
% wieder passen;
% aus epslatex.ps und ver"andert.
\newcommand{\tabcaption}{\def\@captype{table}\topcaption}
%
% Von Axel Reichert Message-ID: <wdso73fr22.fsf@mtntc1.mpie-duesseldorf.mpg.de>
% Anpassen der figure-Umgebung, damit der Inhalt automatisch zentriert wird,
% denn einzeilige \caption-Eintr"age werden ebenfalls zentriert.
\renewenvironment{figure}[1][]{%
  \ifthenelse{\equal{#1}{}}{%
    \@float{figure}%
  }{%
    \@float{figure}[#1]%
  }%
  \centering%
}{%
  \end@float%
}
%
% Von Axel Reichert Message-ID: <wdso73fr22.fsf@mtntc1.mpie-duesseldorf.mpg.de>
% Anpassen der table-Umgebung, damit der Inhalt automatisch zentriert wird,
% denn einzeilige \caption-Eintr"age werden ebenfalls zentriert. Au"serdem wird
% der Abstand bei der table-Umgebung so angepa"st, da"s die Tabellen"uberschrift den
% richtigen Abstand zur darunter stehenden Tabelle aufweist.
\renewenvironment{table}[1][]{%
  \ifthenelse{\equal{#1}{}}{%
    \@float{table}%
  }{%
    \@float{table}[#1]%
  }%
  \centering%
  \setlength{\@tempdima}{\abovecaptionskip}%
  \setlength{\abovecaptionskip}{\belowcaptionskip}%
  \setlength{\belowcaptionskip}{\@tempdima}%
}{%
  \end@float%
}
%
% Anpassung der Plazierungsparameter
\renewcommand{\textfraction}{0.15}
\renewcommand{\topfraction}{0.85}
\renewcommand{\bottomfraction}{0.65}
\renewcommand{\floatpagefraction}{0.60}
%
% Anpassung der vertikalen Zwischenr"aume f"ur Gleitobjekte auf
% \glqq Gleitseiten\grqq
\setlength{\@fptop}{0pt}
\setlength{\@fpsep}{20pt plus 2pt minus 2pt}
\setlength{\@fpbot}{0pt}
%
% Definition der narrow-Umgebung
\newenvironment{narrow}[2]{%
  \begin{list}{}%
    {%
      \setlength{\topsep}{0pt}%
      \setlength{\leftmargin}{#1}%
      \setlength{\rightmargin}{#2}%
      \setlength{\listparindent}{\parindent}%
      \setlength{\itemindent}{\parindent}%
      \setlength{\parskip}{\parskip}%
    }%
  \item[]}%
  {\end{list}}%
%</style>
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{german}
\usepackage{nonfloat}
\begin{document}
\DocInput{nonfloat.dtx}
\end{document}
%</driver>
%
%\end{macrocode}
\endinput
