From 3820b8f6b5f78e1d878a74dfb643539cfc047855 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 30 Nov 2019 22:16:13 +0000 Subject: zref (30nov19) git-svn-id: svn://tug.org/texlive/trunk@52980 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/zref/zref-abspos.sty | 364 +++++++++++++++++++++++ 1 file changed, 364 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/zref/zref-abspos.sty (limited to 'Master/texmf-dist/tex/latex/zref/zref-abspos.sty') 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'. -- cgit v1.2.3