% \iffalse meta-comment/*% \end{macrocode}*/ % % Copyright (C) 1999-2012 by Vytas Statulevi\v{c}ius % Copyright (C) 2021 by Sigitas Tolu\v{s}is % --------------------------------------------------------------------------- % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. % % The Current Maintainer of this work is Sigitas Tolu\v{s}is. % % This work consists of the files floatpag.dtx and floatpag.ins % and the derived filebase floatpag.sty. % % \fi % % \iffalse %<*internal> \begingroup % %<*batchfile> \input docstrip.tex \keepsilent\askforoverwritefalse \preamble %% %% This is file `floatpag.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% floatpag.dtx (with options: `package') %% \endpreamble \generate{\file{floatpag.sty}{\from{floatpag.dtx}{package}}} % %\endbatchfile %<*internal> \generate{\file{floatpag.ins}{\from{floatpag.dtx}{batchfile}}} \endgroup % %<*driver> \ProvidesFile{floatpag.dtx} % %% Copyright (C) 1999-2012 by Vytas Statulevi\v{c}ius %% Copyright (C) 2021 by Sigitas Tolu\v{s}is %% UAB VTeX, Mokslininkų 2A, LT-08412 Vilnius, Lithuania %% -------------------------------------------------------------------------- %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 %% of this license or (at your option) any later version. %% The latest version of this license is in %% http://www.latex-project.org/lppl.txt %% and version 1.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% The macros, developed by Sigitas Tolu\v{s}is , %% were used in this package. %% %% The Current Maintainer of this work is Sigitas Tolu\v{s}is. %% %% PURPOSE: provides commands to apply different pagestyles %% to the full page floats. %% %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesPackage{floatpag} %<*package> [2021/10/04 v2.0 Different pagestyles on float pages] % % %<*driver> \documentclass{ltxdoc} \usepackage{floatpag}[2021/10/04] \EnableCrossrefs \CodelineIndex \RecordChanges \begin{document} \DocInput{floatpag.dtx} \PrintChanges \PrintIndex \end{document} % % \fi % % \CheckSum{216} % % \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 \~} % % % \changes{v1.1}{2012/05/29}{Converted to DTX file} % \changes{v2.0}{2021/10/04}{Removed latex209 compatibility; added rotated dblfloat support} % % \DoNotIndex{\newcommand,\newenvironment} % % \providecommand*{\url}{\texttt} % \GetFileInfo{floatpag.dtx} % \title{The \textsf{floatpag} package} % \author{Vytas Statulevi\v{c}ius and Sigitas Tolu\v{s}is \\ % \url{vytas@vtex.lt}, \url{sigitas@vtex.lt}} % \date{\fileversion~from \filedate} % % \maketitle % % \section{Introduction} % % Provides commands to apply different pagestyles to the full page floats. % % \section{Usage} % % \DescribeMacro{\floatpagestyle} % \marg{foo} will apply pagestyle \meta{foo} to all pages % occupied by full page floats. % % \medskip % \DescribeMacro{\rotfloatpagestyle} % \marg{foo} will apply pagestyle \meta{foo} to all pages % occupied by sideways figures and tables % produced with the help of |rotating| % package (Sebastian Rahtz and Leonor Barroca). % % \medskip % \DescribeMacro{\thisfloatpagestyle} % \marg{foo} will apply pagestyle \meta{foo} to a page where % this command was used inside figure or table % environment. % % \medskip % \textbf{Default:} |\floatpagestyle{headings}| and |\rotfloatpagestyle{plain}|. % % \medskip % The following commands from the LaTeX2e kernel were redefined: % |\@xfloat|, |\@vtryfc|. % % \medskip % The following commands from the rotating.sty was redefined: % |\@xrotfloat|, |\@rotxdblfloat|. % % \StopEventually{} % % \section{Implementation} % % \iffalse %<*package> % \fi % % \begin{macro}{\floatpagestyle} % \begin{macrocode} \def\floatpagestyle#1{\gdef\at@float@page{\thispagestyle{#1}}} % \end{macrocode} % \end{macro} % % % \begin{macro}{\rotfloatpagestyle} % \begin{macrocode} \def\rotfloatpagestyle#1{\gdef\@r@f@pagestyle{#1}} % \end{macrocode} % \end{macro} % % \begin{macrocode} \floatpagestyle{headings} \rotfloatpagestyle{plain} % \end{macrocode} % % \begin{macro}{\thisfloatpagestyle} % % \begin{macrocode} \def\thisfloatpagestyle#1{% \global\@namedef{\number\@currbox @float}{\thispagestyle{#1}}\relax } % \end{macrocode} % \end{macro} % % % \begin{macro}{\@xfloat} % %% Modify |\x@float| - ordinary floats % % \begin{macrocode} \def\@xfloat #1[#2]{% \@nodocument \def \@captype {#1}% \def \@fps {#2}% \@onelevel@sanitize \@fps \def \reserved@b {!}% \ifx \reserved@b \@fps \@fpsadddefault \else \ifx \@fps \@empty \@fpsadddefault \fi \fi \ifhmode \@bsphack \@floatpenalty -\@Mii \else \@floatpenalty-\@Miii \fi \ifinner \@parmoderr\@floatpenalty\z@ \else \@next\@currbox\@freelist {% \@tempcnta \sixt@@n \expandafter \@tfor \expandafter \reserved@a \expandafter :\expandafter =\@fps \do {% \if \reserved@a h% \ifodd \@tempcnta \else \advance \@tempcnta \@ne \fi \else\if \reserved@a t% \@setfpsbit \tw@ \else\if \reserved@a b% \@setfpsbit 4% \else\if \reserved@a p% \@setfpsbit 8% \else\if \reserved@a !% \ifnum \@tempcnta>15 \advance\@tempcnta -\sixt@@n\relax \fi \else \@latex@error{Unknown float option `\reserved@a'}% {Option `\reserved@a' ignored and `p' used.}% \@setfpsbit 8% \fi\fi\fi\fi\fi }% \@tempcntb \csname ftype@\@captype \endcsname \multiply \@tempcntb \@xxxii \advance \@tempcnta \@tempcntb \global \count\@currbox \@tempcnta \global\@namedef{\number\@currbox @float}{\at@float@page}\relax }% \@fltovf \fi \global \setbox\@currbox \color@vbox \normalcolor \vbox \bgroup \hsize\columnwidth \@parboxrestore \@floatboxreset } % \end{macrocode} % \end{macro} % % % \begin{macro}{\floatpag@@xrotfloat} % % rotating.sty v. $>$2.10: % \begin{macrocode} \def\floatpag@@xrotfloat#1[#2]{% \@float{#1}[#2]% \thisfloatpagestyle{\@r@f@pagestyle}% \begin{lrbox}\rot@float@box \begin{minipage}\textheight } % \end{macrocode} % \end{macro} % % % \begin{macro}{\floatpag@@rotxdblfloat} % % rotating.sty v. $>$2.10: % \begin{macrocode} \def\floatpag@@rotxdblfloat#1[#2]{% \@float{#1}[#2]% \thisfloatpagestyle{\@r@f@pagestyle}% \hsize\textwidth\linewidth\textwidth \begin{lrbox}\rot@float@box \begin{minipage}\textheight } % \end{macrocode} % \end{macro} % % % \begin{macrocode} \AtBeginDocument{% \let\@xrotfloat\floatpag@@xrotfloat \let\@rotxdblfloat\floatpag@@rotxdblfloat }% % \end{macrocode} % % % \begin{macro}{\spec@float} % %% "Hook" in the output procedure. % \begin{macrocode} \def\spec@float#1{% \@nameuse{\number#1@float}% \global\@namedef{\number#1@float}{}% } % \end{macrocode} % \end{macro} % % % \begin{macro}{\@vtryfc} % \begin{macrocode} \def\@vtryfc#1{% \global\setbox\@outputbox\vbox{}% \let\@elt\@wtryfc \@flsucceed \let\@elt\spec@float \@flsucceed \global\setbox\@outputbox \vbox to\@colht{% \vskip \@fptop \vskip -\@fpsep \unvbox \@outputbox \vskip \@fpbot }% \let\@elt\relax \xdef#1{\@failedlist\@flfail}% \xdef\@freelist{\@freelist\@flsucceed}% } % \end{macrocode} % \end{macro} % % \begin{macrocode} %\endinput % \end{macrocode} % % \iffalse % % \fi % % \Finale