diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/oberdiek/zref-example.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/oberdiek/zref-example.tex | 152 |
1 files changed, 152 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/zref-example.tex b/Master/texmf-dist/doc/latex/oberdiek/zref-example.tex new file mode 100644 index 00000000000..2fcf7d95f8b --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/zref-example.tex @@ -0,0 +1,152 @@ +%% +%% This is file `zref-example.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% zref.dtx (with options: `example') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 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 zref.dtx +%% and the derived files +%% zref.sty, zref.pdf, zref.ins, zref.drv, +%% zref-base.sty, zref-abspage.sty, zref-counter.sty, +%% zref-dotfill.sty, zref-hyperref.sty, zref-lastpage.sty, +%% zref-perpage.sty, zref-savepos.sty, zref-titleref.sty, +%% zref-totpages.sty, zref-user.sty, zref-xr.sty, +%% zref-example.tex. +%% +\documentclass{book} + +\usepackage[ngerman]{babel}% + +\usepackage[savepos,totpages,titleref,dotfill,counter,user]{zref} + +\makeatletter +\zref@newprop{chaptitle}{} +\zref@addprop{main}{chaptitle} + +\newcommand*{\ChapterStart}[2]{% + \cleardoublepage + \def\current@chapid{#1}% + \zref@setcurrent{chaptitle}{#2}% + \chapter{#2}% + \zlabel{chap:#1}% +} +\newcommand*{\ChapterStop}{% + \cleardoublepage + \zref@wrapper@immediate{% + \zref@labelbyprops{chapend:\current@chapid}{abspage}% + }% +} +\newcommand*{\ChapterPages}[1]{% + \zrefused{chap:#1}% + \zrefused{chapend:#1}% + \number\numexpr + \zref@extract{chapend:#1}{abspage}% + -\zref@extract{chap:#1}{abspage}% + +1\relax +} +\makeatother +\begin{document} +\makeatletter + +\frontmatter +\zlabel{documentstart} + +\begin{itemize} +\item + The frontmatter part has + \number\numexpr\zref@extract{chap:first}{abspage}-1\relax~pages. +\item + Chapter \zref{chap:first} has \ChapterPages{first} page(s). +\item + Section \zref{hello} is on the + \ifcase\numexpr + \zref@extractdefault{hello}{page}{0}% + -\zref@extractdefault{chap:first}{page}{0}% + +1\relax + ??\or first\or second\or third\or forth\fi + ~page inside its chapter. +\item + The document has + \zref[abspage]{LastPage} pages. + This number is \ifodd\ztotpages odd\else even\fi. +\item + The last page is labeled with \zpageref{LastPage}. +\item + The title of chapter \zref{chap:next} is ``\zref[chaptitle]{chap:next}''. +\end{itemize} + +\tableofcontents + +\mainmatter +\ChapterStart{first}{First chapter} + +\section{Test} +\zlabel{a"o} +Section \zref{a"o} on page +\zref@wrapper@babel\zref@extract{a"o}{page}. + +Text. +\newpage + +\section{Hello World} +\zlabel{hello} + +\ChapterStop + +\ChapterStart{next}{Next chapter with \emph{umlauts}: "a"o"u"s} + +The width of the first column is + \the\dimexpr \zposx{secondcol}sp - \zposx{firstcol}sp\relax,\\ +the height difference of the two baselines is + \the\dimexpr \zposy{firstcol}sp - \zposy{secondline}sp\relax:\\ +\begin{tabular}{ll} +\zsavepos{firstcol}Hello&\zsavepos{secondcol}World\\ +\zsavepos{secondline}Second line&foobar\\ +\end{tabular} + +\zrefused{firstcol} +\zrefused{secondcol} +\zrefused{secondline} + +\ChapterStop +\ChapterStart{dotfill}{Test for dotfill feature} +\newcommand*{\dftest}[1]{% + #1& + [\makebox[#1]{\dotfill}]& + [\makebox[#1]{\zdotfill}]\\ +} +\begin{tabular}{rll} +& [\verb|\dotfill|] & [\verb|\zdotfill|]\\ +\dftest{0.43em} +\dftest{0.44em} +\dftest{0.45em} +\dftest{0.87em} +\dftest{0.88em} +\dftest{0.89em} +\dftest{1.31em} +\dftest{1.32em} +\dftest{1.33em} +\end{tabular} +\ChapterStop +\end{document} +\endinput +%% +%% End of file `zref-example.tex'. |