summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty')
-rw-r--r--Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty96
1 files changed, 96 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty b/Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty
new file mode 100644
index 00000000000..7473f84b469
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/oberdiek/atenddvi.sty
@@ -0,0 +1,96 @@
+%%
+%% This is file `atenddvi.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% atenddvi.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% Copyright (C) 2007 by Heiko Oberdiek <oberdiek@uni-freiburg.de>
+%%
+%% 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".
+%%
+%% This Current Maintainer of this work is Heiko Oberdiek.
+%%
+%% This work consists of the main source file atenddvi.dtx
+%% and the derived files
+%% atenddvi.sty, atenddvi.pdf, atenddvi.ins, atenddvi.drv.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{atenddvi}%
+ [2007/03/20 v1.0 At end DVI hook (HO)]%
+\RequirePackage{zref-abspage,zref-lastpage}[2007/03/19]
+\RequirePackage{everyshi}
+\let\AtEndDvi@Hook\@empty
+\newcommand*{\AtEndDvi}{%
+ \g@addto@macro\AtEndDvi@Hook
+}
+\def\AtEndDvi@EveryShipout{%
+ \begingroup
+ \set@typeset@protect
+ \ifnum\value{abspage}=1 %
+ \zref@refused{LastPage}%
+ \fi
+ \ifnum\zref@extractdefault{LastPage}{abspage}{0}=\value{abspage}%
+ \xdef\AtEndDvi@LastPage{\number\value{abspage}}%
+ \global\setbox\@cclv=\vbox{%
+ \hbox{%
+ \box\@cclv
+ \setbox\@cclv=\hbox{%
+ \begingroup
+ \AtEndDvi@Hook
+ \endgroup
+ }%
+ \wd\@cclv=\z@
+ \ht\@cclv=\z@
+ \dp\@cclv=\z@
+ \box\@cclv
+ }%
+ }%
+ \global\let\AtEndDvi@EveryShipout\@empty
+ \global\let\AtEndDvi\@gobble
+ \let\on@line\@empty
+ \PackageInfo{atenddvi}{Last page = \AtEndDvi@LastPage}%
+ \fi
+ \endgroup
+}
+\def\AtEndDvi@AtBeginDocument{%
+ \EveryShipout{\AtEndDvi@EveryShipout}%
+ \if@filesw
+ \immediate\write\@mainaux{%
+ \string\providecommand\string\AtEndDvi@Check{}%
+ }%
+ \immediate\write\@mainaux{%
+ \string\AtEndDvi@Check
+ }%
+ \fi
+ \let\AtEndDvi@Check\AtEndDvi@CheckImpl
+}
+\AtBeginDocument{\AtEndDvi@AtBeginDocument}
+\def\AtEndDvi@CheckImpl{%
+ \@ifundefined{AtEndDvi@LastPage}{%
+ \PackageWarningNoLine{atenddvi}{%
+ Rerun LaTeX, last page not yet found%
+ }%
+ }{%
+ \ifnum\AtEndDvi@LastPage=\value{abspage}%
+ \else
+ \PackageWarningNoLine{atenddvi}{%
+ Rerun LaTeX, last page has changed%
+ }%
+ \fi
+ }%
+}
+\endinput
+%%
+%% End of file `atenddvi.sty'.