summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/zref/zref-abspos.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-11-30 22:16:13 +0000
committerKarl Berry <karl@freefriends.org>2019-11-30 22:16:13 +0000
commit3820b8f6b5f78e1d878a74dfb643539cfc047855 (patch)
treeef2293c0bfb6b57361e7c29d6b9c818aee66eab9 /Master/texmf-dist/tex/latex/zref/zref-abspos.sty
parent056882cabf31fe024953a0cd404e81529bf4af2d (diff)
zref (30nov19)
git-svn-id: svn://tug.org/texlive/trunk@52980 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/zref/zref-abspos.sty')
-rw-r--r--Master/texmf-dist/tex/latex/zref/zref-abspos.sty364
1 files changed, 364 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/zref/zref-abspos.sty b/Master/texmf-dist/tex/latex/zref/zref-abspos.sty
new file mode 100644
index 00000000000..32a93db99e0
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/zref/zref-abspos.sty
@@ -0,0 +1,364 @@
+%%
+%% This is file `zref-abspos.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% zref.dtx (with options: `abspos')
+%%
+%% This is a generated file.
+%%
+%% Project: zref
+%% Version: 2019/11/29 v2.28
+%%
+%% Copyright (C)
+%% 2006-2012 Heiko Oberdiek
+%% 2016-2019 Oberdiek Package Support Group
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3c of this license or (at your option) any later
+%% version. This version of this license is in
+%% https://www.latex-project.org/lppl/lppl-1-3c.txt
+%% and the latest version of this license is in
+%% https://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 Maintainers of this work are
+%% Heiko Oberdiek and the Oberdiek Package Support Group
+%% https://github.com/ho-tex/zref/issues
+%%
+%%
+%% This work consists of the main source file zref.dtx
+%% and the derived files
+%% zref.sty, zref.pdf, zref.ins, zref.drv, zref-base.sty,
+%% zref-abspage.sty, zref-abspos.sty, zref-counter.sty,
+%% zref-dotfill.sty, zref-env.sty, zref-hyperref.sty,
+%% zref-lastpage.sty, zref-marks.sty, zref-nextpage.sty,
+%% zref-pageattr.sty, zref-pagelayout.sty, zref-perpage.sty,
+%% zref-runs.sty, zref-savepos.sty, zref-thepage.sty,
+%% zref-titleref.sty, zref-totpages.sty, zref-user.sty,
+%% zref-xr.sty, zref-example.tex, zref-example-lastpage.tex,
+%% zref-example-nextpage.tex, zref-test1.tex,
+%% zref-test-base.tex, zref-test-runs.tex,
+%% zref-test-titleref-memoir.tex.
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{zref-abspos}%
+ [2019/11/29 v2.28 Module abspos for zref (HO)]%
+\RequirePackage{zref-base}[2019/11/29]
+\ifx\ZREF@base@ok Y%
+\else
+ \expandafter\endinput
+\fi
+\RequirePackage{zref-savepos}[2019/11/29]
+\ifx\ZREF@savepos@ok Y%
+\else
+ \expandafter\endinput
+\fi
+\RequirePackage{zref-pagelayout}[2019/11/29]
+\zref@addprop{savepos}{abspage}
+\RequirePackage{ifpdf}[2010/09/13]
+\newcommand*{\zref@absposx}[3]{%
+ \number
+ \expandafter\zref@absposnumx\expandafter{%
+ \number\zref@extractdefault{#1}{abspage}{0}%
+ }{#2}{#3}%
+ \ltx@space
+}
+\newcommand*{\zref@absposy}[3]{%
+ \number
+ \expandafter\zref@absposnumy\expandafter{%
+ \number\zref@extractdefault{#1}{abspage}{0}%
+ }{#2}{#3}%
+ \ltx@space
+}
+\newcommand*{\zref@absposnumx}[3]{%
+ \number
+ \numexpr\ZREF@absposnum{thepage#1}{#2}{x}{#3}\relax
+}
+\newcommand*{\zref@absposnumy}[3]{%
+ \number
+ \numexpr\ZREF@absposnum{thepage#1}{#2}{y}{#3}\relax
+}
+\def\ZREF@absposnum#1#2#3#4{%
+ \ltx@ifundefined{ZREF@abspos@#2@#3@#4}{%
+ 0%
+ }{%
+ \csname ZREF@abspos@#2@#3@#4\endcsname{#1}%
+ }%
+}
+\ZREF@Robust\def\zref@def@absposx#1{%
+ \zref@wrapper@babel{\ZREF@def@abspos{#1}\zref@absposx}%
+}
+\ZREF@Robust\def\zref@def@absposy#1{%
+ \zref@wrapper@babel{\ZREF@def@abspos{#1}\zref@absposy}%
+}
+\ZREF@Robust\def\zref@def@absposnumx#1{%
+ \zref@wrapper@babel{\ZREF@def@abspos{#1}\zref@absposnumx}%
+}
+\ZREF@Robust\def\zref@def@absposnumy#1{%
+ \zref@wrapper@babel{\ZREF@def@abspos{#1}\zref@absposnumy}%
+}
+\def\ZREF@def@absposnumy#1#2#3#4#5{%
+ \edef#1{#2{#3}{#4}{#5}}%
+}
+\ZREF@Robust\def\zref@absposused{%
+ \zref@wrapper@babel\ZREF@abspos@used
+}
+\def\ZREF@abspos@used#1{%
+ \zref@refused{#1}%
+ \zref@ifrefundefined{#1}{%
+ }{%
+ \begingroup
+ \edef\ZREF@temp{%
+ \zref@extractdefault{#1}{abspage}{0}%
+ }%
+ \ifnum\ZREF@temp>\ltx@zero
+ \zref@refused{thepage\ZREF@temp}%
+ \else
+ \@PackageError{zref-abspos}{%
+ \string\zref@pos@label@used\ltx@space
+ needs property `abspage'\MessageBreak
+ in label `#1'%
+ }\@ehc
+ \fi
+ \endgroup
+ }%
+}
+\newcommand*{\zref@absposnumused}[1]{%
+ \ifnum#1>\ltx@zero
+ \zref@refused{thepage\number#1}%
+ \else
+ \@PackageError{zref-abspos}{%
+ Invalid absolute page number (#1)\MessageBreak
+ for \string\zref@pos@num@used.\MessageBreak
+ A positive integer is expected%
+ }\@ehc
+ \fi
+}
+\def\zref@ifabsposundefined#1{%
+ \zref@ifrefundefined{#1}\ltx@firsttwo{%
+ \expandafter\zref@ifabsposnumundefined\expandafter{%
+ \number\zref@extractdefault{#1}{abspage}{0}%
+ }%
+ }%
+}
+\def\zref@ifabsposnumundefined#1{%
+ \ifnum\ZREF@number{#1}>\ltx@zero
+ \zref@ifrefundefined{thepage#1}%
+ \ltx@firstoftwo\ltx@secondoftwo
+ \else
+ \expandafter\ltx@firstoftwo
+ \fi
+}
+\edef\ZREF@abspos@media@width{%
+ \ltx@ifundefined{pdfpagewidth}{%
+ \ltx@ifundefined{mediawidth}{%
+ \ltx@ifundefined{stockwidth}{%
+ paperwidth%
+ }{%
+ stockwidth%
+ }%
+ }{%
+ mediawidth%
+ }%
+ }{%
+ pdfpagewidth%
+ }%
+}
+\edef\ZREF@abspos@media@height{%
+ \ltx@ifundefined{pdfpageheight}{%
+ \ltx@ifundefined{mediaheight}{%
+ \ltx@ifundefined{stockheight}{%
+ paperheight%
+ }{%
+ stockheight%
+ }%
+ }{%
+ mediaheight%
+ }%
+ }{%
+ \noexpand\ifcase\pdfpageheight
+ \ltx@ifundefined{stockheight}{%
+ paperheight%
+ }{%
+ stockheight%
+ }%
+ \noexpand\else
+ pdfpageheight%
+ \noexpand\fi
+ }%
+}
+\def\ZREF@abspos@media@x@left#1{%
+ 0%
+}
+\def\ZREF@abspos@media@x@right#1{%
+ \zref@extract{#1}\ZREF@abspos@media@width
+}
+\def\ZREF@abspos@media@x@center#1{%
+ \ZREF@abspos@media@x@left{#1}%
+ +\zref@extract{#1}\ZREF@abspos@media@width/2%
+}
+\def\ZREF@abspos@media@y@top#1{%
+ \zref@extract{#1}\ZREF@abspos@media@height
+}
+\def\ZREF@abspos@media@y@bottom#1{%
+ 0%
+}
+\def\ZREF@abspos@media@y@center#1{%
+ \zref@extract{#1}\ZREF@abspos@media@height/2%
+}
+\def\ZREF@abspos@paper@x@left#1{%
+ 0%
+}
+\def\ZREF@abspos@paper@x@right#1{%
+ \zref@extract{#1}{paperwidth}%
+}
+\def\ZREF@abspos@paper@x@center#1{%
+ \zref@extract{#1}{paperwidth}/2%
+}
+\let\ZREF@abspos@paper@y@top\ZREF@abspos@media@y@top
+\def\ZREF@abspos@paper@y@bottom#1{%
+ \ZREF@abspos@paper@y@top{#1}%
+ -\zref@extract{#1}{paperheight}%
+}
+\def\ZREF@abspos@paper@y@center#1{%
+ \ZREF@abspos@paper@y@top{#1}%
+ -\zref@extract{#1}{paperheight}/2%
+}
+\let\ZREF@temp\ltx@two
+\ltx@IfUndefined{pdfhorigin}{}{%
+ \ifpdf
+ \let\ZREF@temp\ltx@zero
+ \fi
+}
+\ifx\ZREF@temp\ltx@two
+ \ifnum\mag=1000 %
+ \let\ZREF@temp\ltx@one
+ \fi
+\fi
+\ifcase\ZREF@temp
+ \def\ZREF@abspos@origin@x#1{%
+ \zref@extract{#1}{pdfhorigin}%
+ }%
+\or
+ \def\ZREF@abspos@origin@x#1{%
+ 4736286%
+ }%
+\or
+ \def\ZREF@abspos@origin@x#1{%
+ \numexpr\mag/1000*\dimexpr 1truein\relax\relax
+ }%
+\fi
+\let\ZREF@temp\ltx@two
+\ltx@IfUndefined{pdfvorigin}{}{%
+ \ifpdf
+ \let\ZREF@temp\ltx@zero
+ \fi
+}
+\ifx\ZREF@temp\ltx@two
+ \ifnum\mag=1000 %
+ \let\ZREF@temp\ltx@one
+ \fi
+\fi
+\ifcase\ZREF@temp
+ \def\ZREF@abspos@origin@y#1{%
+ \zref@extract{#1}{pdfvorigin}%
+ }%
+\or
+ \def\ZREF@abspos@origin@y#1{%
+ 4736286%
+ }%
+\or
+ \def\ZREF@abspos@origin@y#1{%
+ \numexpr\mag/1000*\dimexpr 1truein\relax\relax
+ }%
+\fi
+\def\ZREF@abspos@head@x@left#1{%
+ \ZREF@abspos@paper@x@left{#1}%
+ +\ZREF@abspos@origin@x{#1}%
+ +\zref@extract{#1}{hoffset}%
+ +\ifodd\zref@extractdefault{#1}{pagevalue}{\number\c@page} %
+ \zref@extract{#1}{oddsidemargin}%
+ \else
+ \zref@extract{#1}{evensidemargin}%
+ \fi
+}
+\def\ZREF@abspos@head@x@right#1{%
+ \ZREF@abspos@head@x@left{#1}%
+ +\zref@extract{#1}{textwidth}%
+}
+\def\ZREF@abspos@head@x@center#1{%
+ \ZREF@abspos@head@x@left{#1}%
+ +\zref@extract{#1}{textwidth}/2%
+}
+\def\ZREF@abspos@head@y@top#1{%
+ \ZREF@abspos@paper@y@top{#1}%
+ -\ZREF@abspos@origin@y{#1}%
+ -\zref@extract{#1}{voffset}%
+ -\zref@extract{#1}{topmargin}%
+}
+\def\ZREF@abspos@head@y@bottom#1{%
+ \ZREF@abspos@head@y@top{#1}%
+ -\zref@extract{#1}{headheight}%
+}
+\def\ZREF@abspos@head@y@center#1{%
+ \ZREF@abspos@head@y@top{#1}%
+ -\zref@extract{#1}{headheight}/2%
+}
+\let\ZREF@abspos@body@x@left\ZREF@abspos@head@x@left
+\let\ZREF@abspos@body@x@right\ZREF@abspos@head@x@right
+\let\ZREF@abspos@body@x@center\ZREF@abspos@head@x@center
+\def\ZREF@abspos@body@y@top#1{%
+ \ZREF@abspos@head@y@bottom{#1}%
+ -\zref@extract{#1}{headsep}%
+}
+\def\ZREF@abspos@body@y@bottom#1{%
+ \ZREF@abspos@body@y@top{#1}%
+ -\zref@extract{#1}{textheight}%
+}
+\def\ZREF@abspos@body@y@center#1{%
+ \ZREF@abspos@body@y@top{#1}%
+ -\zref@extract{#1}{textheight}/2%
+}
+\let\ZREF@abspos@foot@x@left\ZREF@abspos@head@x@left
+\let\ZREF@abspos@foot@x@right\ZREF@abspos@head@x@right
+\let\ZREF@abspos@foot@x@center\ZREF@abspos@head@x@center
+\def\ZREF@abspos@foot@y@bottom#1{%
+ \ZREF@abspos@body@y@bottom{#1}%
+ -\zref@extract{#1}{footskip}%
+}
+\def\ZREF@abspos@marginpar@x@left#1{%
+ \ifodd\zref@extractdefault{#1}{pagevalue}{\number\c@page} %
+ \ZREF@abspos@body@x@right{#1}%
+ +\zref@extract{#1}{marginparsep}%
+ \else
+ \ZREF@abspos@body@x@left{#1}%
+ -\zref@extract{#1}{marginparsep}%
+ -\zref@extract{#1}{marginparwidth}%
+ \fi
+}
+\def\ZREF@abspos@marginpar@x@right#1{%
+ \ZREF@abspos@marginpar@x@left{#1}%
+ +\zref@extract{#1}{marginparwidth}%
+}
+\def\ZREF@abspos@marginpar@x@center#1{%
+ \ZREF@abspos@marginpar@x@left{#1}%
+ +\zref@extract{#1}{marginparwidth}/2%
+}
+\let\ZREF@abspos@marginpar@y@top\ZREF@abspos@body@y@top
+\let\ZREF@abspos@marginpar@y@bottom\ZREF@abspos@body@y@bottom
+\let\ZREF@abspos@marginpar@y@center\ZREF@abspos@body@y@center
+\let\ZREF@abspos@stock@x@left\ZREF@abspos@paper@x@left
+\let\ZREF@abspos@stock@x@right\ZREF@abspos@paper@x@right
+\let\ZREF@abspos@stock@x@center\ZREF@abspos@paper@x@center
+\let\ZREF@abspos@stock@y@top\ZREF@abspos@paper@y@top
+\let\ZREF@abspos@stock@y@bottom\ZREF@abspos@paper@y@bottom
+\let\ZREF@abspos@stock@y@center\ZREF@abspos@paper@y@center
+\endinput
+%%
+%% End of file `zref-abspos.sty'.