summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/plates
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-13 00:02:47 +0000
committerKarl Berry <karl@freefriends.org>2006-01-13 00:02:47 +0000
commit61c03e830269973a964626996fa9a1943f704fd3 (patch)
treee805447573856b202cfbc06ac4314b4e00abfe71 /Master/texmf-dist/tex/latex/plates
parent353b080a8546f9bef044ac75687eaad6842efd66 (diff)
plates
git-svn-id: svn://tug.org/texlive/trunk@1200 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/plates')
-rw-r--r--Master/texmf-dist/tex/latex/plates/endplate.sty190
-rw-r--r--Master/texmf-dist/tex/latex/plates/plates.sty288
2 files changed, 478 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/plates/endplate.sty b/Master/texmf-dist/tex/latex/plates/endplate.sty
new file mode 100644
index 00000000000..263c98465a6
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/plates/endplate.sty
@@ -0,0 +1,190 @@
+%This is a modified file of endfloat.sty for use with
+%plates.sty package. This file is only designed to
+%be internally called from plates.
+%
+%Anthony Tanbakuchi
+%Mar.19.2002
+%
+%
+%%
+%% This is file `endfloat.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% endfloat.dtx (with options: `package')
+%%
+%% IMPORTANT NOTICE:
+%% This is part of a set of tools (or better yet, experiments) written
+%% by Jeff Goldberg (j.goldberg@Cranfield.ac.uk), who is writting this
+%% not only for it utility value, but as part of the process of learning
+%% LaTeX. These tools are far from perfect, and comments are welcome.
+%%
+%% The usual disclaimers apply: If it doesn't work right that's your
+%% problem (but do let me know).
+%%
+%% The usual GNU-style conditions apply: If you change it, you take
+%% the blame; if you pass it on, pass on all present condiditions;
+%%
+\def\filename{endplate}
+\def\fileversion{v2.4i}
+\def\filedate{1995/10/11}
+\def\docdate {1995/10/11}
+%% \CharacterTable
+%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%% Digits \0\1\2\3\4\5\6\7\8\9
+%% Exclamation \! Double quote \" Hash (number) \#
+%% Dollar \$ Percent \% Ampersand \&
+%% Acute accent \' Left paren \( Right paren \)
+%% Asterisk \* Plus \+ Comma \,
+%% Minus \- Point \. Solidus \/
+%% Colon \: Semicolon \; Less than \<
+%% Equals \= Greater than \> Question mark \?
+%% Commercial at \@ Left bracket \[ Backslash \\
+%% Right bracket \] Circumflex \^ Underscore \_
+%% Grave accent \` Left brace \{ Vertical bar \|
+%% Right brace \} Tilde \~}
+%%
+%% Description: LaTeX style to put plates and tables at end of article
+%% Keywords: LaTeX, style-option, float, plate, table
+%% Authors: James Darrell McCauley <jdm5548@diamond.tamu.edu>,
+%% Jeff Goldberg <j.goldberg@cranfield.ac.uk>
+%% Maintainer: Jeff Goldberg <J.Goldberg@Cranfield.ac.uk>
+%% Latest Version: Version 2.4i <October 1995>
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesPackage{endplate}[2002/03/18 v0.1 endplates for plates package by AT]
+\newcommand{\ef@OldCmd}[2]{\PackageWarning{endplate}
+ {The command \protect#1 is obsolete and will be\MessageBreak
+ omitted from future releases of the endfloat package.\MessageBreak
+ Use the package option `#2' instead.}}
+\newif\if@domarkers
+\newif\if@figlist % bj
+\newif\if@fighead
+\@domarkerstrue
+\@figlisttrue
+\@figheadfalse
+\DeclareOption{nomarkers}{\@domarkersfalse }
+\DeclareOption{markers}{\@domarkerstrue }
+\newcommand{\markersintext}{\@domarkerstrue
+ \ef@OldCmd{\markersintext}{markers}}
+\newcommand{\nomarkersintext}{\@domarkersfalse
+ \ef@OldCmd{\nomarkersintext}{nomarkers}}
+\newcommand{\dofiglist}{\@figlisttrue \ef@OldCmd{\dofiglist}{figlist}}
+\newcommand{\nofiglist}{\@figlistfalse \@figheadtrue
+ \ef@OldCmd{\nofiglist}{nofiglist}}
+\DeclareOption{nolists}{ \@figlistfalse }
+\DeclareOption{lists}{\@figlisttrue }
+\DeclareOption{nofiglist}{\@figlistfalse }
+\DeclareOption{figlist}{\@figlisttrue }
+\DeclareOption{heads}{\@figheadtrue }
+\DeclareOption{noheads}{\@figheadfalse }
+\DeclareOption{fighead}{\@figheadtrue }
+\DeclareOption{nofighead}{\@figheadfalse }
+\DeclareOption{platesfirst}{\@tablesfirstfalse }
+\DeclareOption*{%
+ \PackageWarning{endfloat}{Unknown option `\CurrentOption'}}
+\ProcessOptions
+\def\efloat@newwrite#1{%
+ \expandafter\newwrite\csname efloat@post#1\endcsname}
+\def\efloat@openpost#1{\expandafter\immediate\expandafter\openout
+ \csname efloat@post#1\endcsname =\jobname.#1\relax
+ \ef@setct{#1}{1}
+ \message{(\jobname.#1)}}
+\def\ef@newct#1{%
+ \expandafter \newcount \csname @ef@#1open\endcsname}
+\def\ef@setct#1#2{\expandafter\global\csname @ef@#1open\endcsname=#2\relax}
+\def\efloat@condopen#1{%
+ \expandafter\ifnum \csname @ef@#1open\endcsname>0 \relax \else
+ \efloat@openpost{#1}\fi}
+\def\efloat@iwrite#1#2{%
+ \expandafter\immediate\expandafter\write\csname efloat@post#1\endcsname
+ {#2}}
+\newcommand{\efloatseparator}{\clearpage}
+\newcounter{postfig}
+\efloat@newwrite{fff}
+\ef@newct{fff}
+\newcounter{posttbl}
+\efloat@newwrite{ttt}
+\ef@newct{ttt}
+\newcommand*{\ef@makeinnocent}[1]{\catcode`#1=12 }
+\providecommand{\platename}{Plate}
+\newcommand{\plateplace}{%
+ \begin{center}
+ [\platename~\thepostfig\ about here.]
+ \end{center}}
+\let\@bfig\plate % bj
+\let\efloat@float\relax
+\def\plate{%
+ \efloat@condopen{fff}
+ \efloat@iwrite{fff}{\string\begin{plate*}}%
+ \if@domarkers%
+ \addtocounter{postfig}{1}% % bj
+ \plateplace% % bj
+ \fi%
+ \def\@currenvir{efloat@float}%
+ \begingroup%
+ \let\do\ef@makeinnocent \dospecials%
+ \ef@makeinnocent\^^L% and whatever other special cases
+ \endlinechar`\^^M \catcode`\^^M=12 \ef@xplate}%
+\def\efloat@foundend#1#2{\def\next{\endgroup\end{efloat@float}%
+ \efloat@iwrite{#1}{\string\end{#2}}%
+ \efloat@iwrite{#1}{\string\efloatseparator}%
+ \efloat@iwrite{#1}{ }}}%
+{\catcode`\^^M=12 \endlinechar=-1 %
+ \gdef\ef@xplate#1^^M{\def\test{#1}%
+ \ifx\test\ef@endplatetest
+ \efloat@foundend{fff}{plate*}
+ \else\ifx\test\ef@enddblplatetest
+ \efloat@foundend{fff}{plate*}
+ \else%
+ \efloat@iwrite{fff}{#1}%
+ \let\next\ef@xplate%
+ \fi \fi \next}%
+}%
+{\escapechar=-1%
+ \xdef\ef@endplatetest{\string\\end\string\{plate\string\}}%
+ \xdef\ef@enddblplatetest{\string\\end\string\{plate*\string\}}%
+}%
+\@namedef{plate*}{\plate}
+%%%\providecommand{\platesection}{Plates}
+\providecommand{\platesection}{\platenames}
+\newcommand{\processplates@hook}{\@empty}
+\def\AtBeginPlates{\g@addto@macro\processplates@hook}
+\newcommand{\processdelayedfloats@hook}{\@empty}
+\def\AtBeginDelayedFloats{%
+ \g@addto@macro\processdelayedfloats@hook}
+\newcommand{\processotherdelayedfloats}{\@empty}
+\def\processplates{%
+ \expandafter\ifnum \csname @ef@fffopen\endcsname>0
+ \immediate\closeout\efloat@postfff \ef@setct{fff}{0}
+ \clearpage % bj
+ \if@figlist % bj
+ {\normalsize\listofplates} % bj
+ \clearpage % bj
+ \fi
+ \if@fighead
+ \section*{\platesection} % bj
+ \suppressfloats[t] % jpg
+ \fi
+ \markboth{\uppercase{\platesection}}{\uppercase{\platesection}}% bj
+ \processplates@hook \@input{\jobname.fff}
+ \fi}
+\renewcommand{\bottomfraction}{1.0}
+\renewcommand{\topfraction}{1.0}
+\renewcommand{\textfraction}{0.0}
+\newcommand{\processdelayedfloats}{{%
+ \def\baselinestretch{1}\normalsize
+ \let\plate\@bfig
+ \processdelayedfloats@hook
+ \processplates
+ \processotherdelayedfloats}}
+\AtEndDocument{% % jpg
+ \message{AED endfloat: Processing end Plates and Tables}% % jpg
+ \onecolumn
+ \processdelayedfloats }
+\InputIfFileExists{endfloat.cfg}{%
+ \typeout{*** Using endfloat.cfg ***}}{}
+\endinput
+%%
+%% End of file `endfloat.sty'.
diff --git a/Master/texmf-dist/tex/latex/plates/plates.sty b/Master/texmf-dist/tex/latex/plates/plates.sty
new file mode 100644
index 00000000000..0415a6ffe74
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/plates/plates.sty
@@ -0,0 +1,288 @@
+%PACKAGE plates
+% For placement of special float enviornment `plates'. Allows
+% user to put plate floats in document as if they were figure, but
+% the plates are all gathered and printed at the specified location.
+% Designed to be helpful when including color figures at the back of
+% a document. Optionally, the `figures' option can be supplied and then
+% the plates will just be printed in the document.
+%
+%NEW ENVIORNMENT
+%\begin{plate}
+%%just use like figure enviornment
+%\end{plate}
+%
+%NEW COMMANDS
+%\ProcessPlates - at point of issue the plates are gathered together and printed.
+%\listofplates - prints the list of plates just like \listoffigures
+%\setplatename - sets the name of the float enviornment - default `plates'
+%
+%OPTIONS
+%figures - treats plates like regular floats. Plates are printed inside the document
+% and \autoref{} will now use Figure instead of Plate in referencing.
+% \listofplates & \ProcessPlates has no effect
+%memoir - if using memoir class creates an added appendix page where \ProcessPlates is issued.
+%onefloatperpage - only allows one float per page, after each float \cleardoublepage is issued.
+% otherwise default is to gather floats together but will print as many as will fit to a page
+% as well as printing on both sides of a two sided document. *Probably should fix this
+% or make an option to turn off both sides.
+%
+%
+%This Package includes code from the Memoir class and uses
+%the endplate package, a modification of endfloat.
+%
+%Anthony A. Tanbakuchi
+%Mar.19.2002
+%
+%
+\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{plates}[2002/03/18 v0.1 FigSize sizes graphics for graphicx package]
+\RequirePackage{ifthen}[1994/06/01]
+
+\newcounter{optfigures}
+\newcounter{optmemoir}
+\newcounter{optonefloatperpage}
+ %Option to process all plates as figures (ie --- the package is disables, plate enviornments act like figures.)
+ \DeclareOption{figures}{\setcounter{optfigures}{1}}
+ \DeclareOption{memoir}{\setcounter{optmemoir}{1}}
+ \DeclareOption{onefloatperpage}{\setcounter{optonefloatperpage}{1}}
+ \ProcessOptions\relax
+
+%The real setplatename definition comes later... this is just to ensure that
+%when figures option is used setplatename is still valid.
+\newcommand{\setplatename}[1]{}
+
+\ifthenelse{\value{optfigures} = 0}{%
+%
+%COMMANDS for the new float env & list of are from memoir.
+%If memoir is not in use then define the commands
+\makeatletter
+\@ifundefined{newlistof}{%TRUE TEXT
+%*******************************************************************
+%%***************COPIED from MEMOIR CLASS***************************
+%*******************************************************************
+\newcounter{newflo@tctr}
+ \setcounter{newflo@tctr}{1}
+\newcommand{\newfloat}[4][\@empty]{%
+ \@namedef{ftype@#2}{\value{newflo@tctr}}
+ \addtocounter{newflo@tctr}{\value{newflo@tctr}}
+ \@ifundefined{c@#2}{% counter is not defined
+ \ifx \@empty#1\relax
+ \newcounter{#2}
+ \else
+ \newcounter{#2}[#1]
+ \expandafter\edef\csname the#2\endcsname{%
+ \expandafter\noexpand\csname the#1\endcsname.\noexpand\arabic{#2}}
+ \fi}{}
+ \setcounter{#2}{0}
+
+ \@namedef{ext@#2}{#3} % file extension
+ \@ifundefined{c@#3depth}{\newcounter{#3depth}}{}
+ \setcounter{#3depth}{1}
+
+ \@namedef{fps@#2}{tbp} % position
+ \@namedef{fnum@#2}{#4~\@nameuse{the#2}} % caption naming
+ \@namedef{fleg#2}{#4} % legend naming
+ \@namedef{flegtoc#2}##1{} % legend name in ToC
+
+ \newenvironment{#2}{\@float{#2}}{\end@float}
+ \newenvironment{#2*}{\@dblfloat{#2}}{\end@dblfloat}
+} % end \newfloat
+
+\newcommand{\newlistentry}[4][\@empty]{%
+ \@ifundefined{c@#2}{% check & set the counter
+ \ifx \@empty#1\relax
+ \newcounter{#2}
+ \else
+ \newcounter{#2}[#1]%
+ \expandafter\edef\csname the#2\endcsname{%
+ \expandafter\noexpand\csname the#1\endcsname.\noexpand\arabic{#2}}
+ \fi}{}
+ \setcounter{#2}{0}
+
+ \@namedef{l@#2}##1##2{%
+ \ifnum \@nameuse{c@#3depth} > #4\relax
+ \vskip \@nameuse{cftbefore#2skip}
+ {\leftskip \@nameuse{cft#2indent}\relax
+ \rightskip \@tocrmarg
+ \parfillskip -\rightskip
+ \parindent \@nameuse{cft#2indent}\relax\@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima \@nameuse{cft#2numwidth}\relax
+ \expandafter\let\expandafter\@cftbsnum\csname cft#2presnum\endcsname
+ \expandafter\let\expandafter\@cftasnum\csname cft#2aftersnum\endcsname
+ \expandafter\let\expandafter\@cftasnumb\csname cft#2aftersnumb\endcsname
+ \advance\leftskip\@tempdima \null\nobreak\hskip -\leftskip
+ {\@nameuse{cft#2font}##1}\nobreak
+ \@nameuse{cft#2fillnum}{##2}}
+ \fi
+ } % end of \l@#2
+
+ \expandafter\newlength\csname cftbefore#2skip\endcsname
+ \setlength{\@nameuse{cftbefore#2skip}}{\z@ \@plus .2\p@}
+ \expandafter\newlength\csname cft#2indent\endcsname
+ \expandafter\newlength\csname cft#2numwidth\endcsname
+ \ifcase #4\relax % 0 (level 1)
+ \setlength{\@nameuse{cft#2indent}}{0em}
+ \setlength{\@nameuse{cft#2numwidth}}{2.3em}
+ \or % 1 (level 2)
+ \setlength{\@nameuse{cft#2indent}}{2.3em}
+ \setlength{\@nameuse{cft#2numwidth}}{3.2em}
+ \or % 2 (level 3)
+ \setlength{\@nameuse{cft#2indent}}{5.5em}
+ \setlength{\@nameuse{cft#2numwidth}}{4.1em}
+ \or % 3 (level 4)
+ \setlength{\@nameuse{cft#2indent}}{8.5em}
+ \setlength{\@nameuse{cft#2numwidth}}{5.0em}
+ \else % anything else
+ \setlength{\@nameuse{cft#2indent}}{10.5em}
+ \setlength{\@nameuse{cft#2numwidth}}{6.0em}
+ \fi
+ \@namedef{cft#2font}{\normalfont}
+ \@namedef{cft#2presnum}{}
+ \@namedef{cft#2aftersnum}{}
+ \@namedef{cft#2aftersnumb}{}
+ \@namedef{cft#2dotsep}{\cftdotsep}
+ \@namedef{cft#2leader}{\normalfont\cftdotfill{\@nameuse{cft#2dotsep}}}
+ \@namedef{cft#2pagefont}{\normalfont}
+ \@namedef{cft#2afterpnum}{}
+ \@namedef{toclevel@#2}{#4}
+ \@namedef{cft#2fillnum}##1{%
+ {\@nameuse{cft#2leader}}\nobreak
+ \hb@xt@\@pnumwidth{\hfil\@nameuse{cft#2pagefont}##1}\@nameuse{cft#2afterpnum}\par}
+} % end \newlistentry
+
+\newcommand{\newsubfloat}[1]{%
+ \newlistentry[#1]{sub#1}{\@nameuse{ext@#1}}{1}
+ \@namedef{ext@sub#1}{\csname ext@#1\endcsname}
+ \@namedef{thesub#1}{(\alph{sub#1})}
+ \@namedef{@thesub#1}{{\subcaplabelfont\@nameuse{thesub#1}}\space}
+ \@namedef{p@sub#1}{\csname the#1\endcsname}
+ \@namedef{@makesub#1caption}{\@makesubfigurecaption}
+}
+
+\newcommand{\newfixedcaption}[3][\caption]{%
+ \newcommand{#2}{\def\@captype{#3}#1}}
+\newcommand{\renewfixedcaption}[3][\caption]{%
+ \renewcommand{#2}{\def\@captype{#3}#1}}
+\newcommand{\providefixedcaption}[3][\caption]{%
+ \providecommand{#2}{\def\@captype{#3}#1}}
+
+\newcommand{\newlistof}[3]{%
+ \@namedef{ext@#2}{#2}
+ \@ifundefined{c@#2depth}{\newcounter{#2depth}}{}
+ \setcounter{#2depth}{1}
+
+ \@namedef{#2mark}{%
+ \@mkboth{#3}{#3}}
+
+ \@namedef{#1}{\@ifstar{\@nameuse{@star#2}}{\@nameuse{@plain#2}}}
+ \@namedef{@star#2}{%
+ \ensureonecol
+ \par
+ \begingroup
+%%% \parindent\z@ \parskip\cftparskip
+ \@nameuse{@#2maketitle}
+ \@starttoc{#2}%
+ \endgroup
+ \restorefromonecol}
+
+ \@namedef{@plain#2}{%
+ \ensureonecol
+ \par
+ \begingroup
+%%% \parindent\z@ \parskip\cftparskip
+ \@nameuse{@#2maketitle}
+ \phantomsection
+ \addcontentsline{toc}{chapter}{#3}
+ \@starttoc{#2}%
+ \endgroup
+ \restorefromonecol}
+
+ \@namedef{@#2maketitle}{%
+ \@nameuse{#2headstart}
+ {\parindent\z@ \parskip\cftparskip
+ \interlinepenalty\@M
+ \@nameuse{print#2title}{#3}%
+ \@nameuse{#2mark}%
+ \thispagestyle{chapter}%
+ \@nameuse{after#2title}
+ }
+ \@afterheading}
+
+ \@namedef{#2headstart}{\chapterheadstart}
+ \@namedef {after#2title}{\afterchaptertitle}
+ \@namedef{print#2title}##1{\printchaptertitle{##1}}
+} % end \newlistof
+%*******************************************************************
+%%***********END*COPIED from MEMOIR CLASS***************************
+%*******************************************************************
+}{%FALSE TEXT -- nothing needed
+}
+
+%
+%Plates Commands
+\newcommand{\platename}{Plate}%
+\newcommand{\platenames}{{\platename}s}%
+\renewcommand{\setplatename}[1]{\renewcommand{\platename}{#1}}
+
+\newcommand{\listplatename}{List of \platenames}%
+\newlistof{listofplates}{plt}{\listplatename}%
+\newfloat{plate}{plt}{\platename}%
+\newfixedcaption{\fpltcaption}{plt}%
+\newlistentry{plate}{plt}{0}%
+\newsubfloat{plate}%
+\renewcommand{\theplate}{\Roman{plate}}%
+%
+%Make sure plate pages don't have seciton headers
+%%kuchicomment
+%\makepagestyle{floatcomp}%
+%% \headwidth has already been defined for the companion style
+%\makeheadrule{floatcomp}{\headwidth}%
+%{\ifonlyfloats{0pt}{\normalrulethickness}}%
+%\makeheadposition{floatcomp}{flushright}{flushleft}{}{}%
+%\makepsmarks{floatcomp}{\companionpshook}%
+%\makeevenhead{floatcomp}{\ifonlyfloats{}{\normalfont\bfseries\thepage}}%
+%{}{\ifonlyfloats{}{\normalfont\bfseries\leftmark}}%
+%\makeoddhead{floatcomp}{\ifonlyfloats{}{\normalfont\bfseries\rightmark}}%
+%{}{\ifonlyfloats{}{\normalfont\bfseries\thepage}}%
+%\makeevenfoot{floatcomp}{}{\ifonlyfloats{\thepage}{}}{}%
+%\makeoddfoot{floatcomp}{}{\ifonlyfloats{\thepage}{}}{}%
+%
+%Ensure proper autoref for subplates
+\newcommand{\subplateautorefname}{\mbox{\platename}}%
+%
+\RequirePackage[nolists,noheads,nomarkers]{endplate}[2002/03/18]%
+%
+%Set up what is to happen when \ProcessPlates is issued
+%
+%Command to print out the plates at given location
+\newcommand{\ProcessPlates}{\processdelayedfloats}%
+
+ %If option MEMOIR is supplied then add an appendix page to front of plates
+\ifthenelse{\value{optmemoir} = 1}{%
+\renewcommand{\ProcessPlates}{%
+\AtBeginPlates{\renewcommand{\appendixpagename}{\platenames}%
+\renewcommand{\appendixname}{\platenames}%
+\renewcommand{\appendixtocname}{\platenames}%
+\appendixpage%
+\clearforchapter}%
+\processdelayedfloats}
+}{}
+%
+%Allow multiple floats per page
+\renewcommand{\efloatseparator}{}
+%Option for one float per page
+\ifthenelse{\value{optonefloatperpage} = 1}{%
+\renewcommand{\efloatseparator}{\cleardoublepage}}{}
+%
+}{%OPTION FIGURES is being used, so we just make the plate enviornment a figure enviornment
+\newenvironment{plate}{\begin{figure}}{\end{figure}}%
+%ProcessPlates command now does nothing!%
+\newcommand{\ProcessPlates}{}%
+%\listofplates now does nothing
+\newcommand{\listofplates}{}
+
+}
+
+
+\endinput