From 2607d53137ede06e9780342b225218743e100bb4 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 27 Aug 2006 22:38:54 +0000 Subject: oberdiek update from tds zip (28aug06) git-svn-id: svn://tug.org/texlive/trunk@2054 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/oberdiek/aliascnt.sty | 82 + Master/texmf-dist/tex/latex/oberdiek/alphalph.sty | 198 --- Master/texmf-dist/tex/latex/oberdiek/atfidvips.def | 512 ++++++ .../texmf-dist/tex/latex/oberdiek/atfipdftex.def | 151 ++ .../texmf-dist/tex/latex/oberdiek/attachfile2.sty | 738 +++++++++ Master/texmf-dist/tex/latex/oberdiek/auxhook.sty | 102 ++ .../texmf-dist/tex/latex/oberdiek/bmpsize-base.sty | 1706 ++++++++++++++++++++ .../tex/latex/oberdiek/bmpsize-dvipdfm.def | 146 ++ .../tex/latex/oberdiek/bmpsize-dvipdfmx.def | 46 + .../tex/latex/oberdiek/bmpsize-dvips.def | 122 ++ .../texmf-dist/tex/latex/oberdiek/bmpsize-test.tex | 141 ++ Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty | 218 +++ Master/texmf-dist/tex/latex/oberdiek/chemarr.sty | 74 +- Master/texmf-dist/tex/latex/oberdiek/classlist.sty | 109 +- .../texmf-dist/tex/latex/oberdiek/colonequals.sty | 120 ++ .../texmf-dist/tex/latex/oberdiek/dtx-attach.sty | 41 + Master/texmf-dist/tex/latex/oberdiek/dvipscol.sty | 88 +- Master/texmf-dist/tex/latex/oberdiek/embedfile.sty | 308 ++++ Master/texmf-dist/tex/latex/oberdiek/engord.sty | 171 -- Master/texmf-dist/tex/latex/oberdiek/epstopdf.sty | 210 ++- Master/texmf-dist/tex/latex/oberdiek/grffile.sty | 207 +++ Master/texmf-dist/tex/latex/oberdiek/holtxdoc.sty | 162 ++ Master/texmf-dist/tex/latex/oberdiek/hypbmsec.sty | 48 +- Master/texmf-dist/tex/latex/oberdiek/hypcap.sty | 50 +- .../texmf-dist/tex/latex/oberdiek/hypdestopt.sty | 257 +++ Master/texmf-dist/tex/latex/oberdiek/hypdoc.sty | 495 ++++++ Master/texmf-dist/tex/latex/oberdiek/ifdraft.sty | 117 +- Master/texmf-dist/tex/latex/oberdiek/ifpdf.sty | 167 -- Master/texmf-dist/tex/latex/oberdiek/ifvtex.sty | 195 --- Master/texmf-dist/tex/latex/oberdiek/inputenx.sty | 146 ++ Master/texmf-dist/tex/latex/oberdiek/ix-alias.def | 81 + Master/texmf-dist/tex/latex/oberdiek/ix-math.def | 101 ++ Master/texmf-dist/tex/latex/oberdiek/ix-name.def | 456 ++++++ Master/texmf-dist/tex/latex/oberdiek/ix-slot.def | 1506 +++++++++++++++++ Master/texmf-dist/tex/latex/oberdiek/ix-uc.def | 977 +++++++++++ .../texmf-dist/tex/latex/oberdiek/ix-utf8enc.dfu | 209 +++ Master/texmf-dist/tex/latex/oberdiek/kvoptions.sty | 930 +++++++++++ .../texmf-dist/tex/latex/oberdiek/makerobust.sty | 68 + Master/texmf-dist/tex/latex/oberdiek/pagesel.sty | 144 +- Master/texmf-dist/tex/latex/oberdiek/pdfcolmk.sty | 135 +- Master/texmf-dist/tex/latex/oberdiek/pdfcrypt.sty | 398 ----- Master/texmf-dist/tex/latex/oberdiek/pdflscape.sty | 168 +- Master/texmf-dist/tex/latex/oberdiek/picture.sty | 198 +++ Master/texmf-dist/tex/latex/oberdiek/pmboxdraw.sty | 1079 +++++++++++++ .../texmf-dist/tex/latex/oberdiek/pmboxdrawenc.dfu | 82 + Master/texmf-dist/tex/latex/oberdiek/refcount.sty | 139 ++ Master/texmf-dist/tex/latex/oberdiek/settobox.sty | 124 +- Master/texmf-dist/tex/latex/oberdiek/tabularht.sty | 236 +-- Master/texmf-dist/tex/latex/oberdiek/tabularkv.sty | 107 +- Master/texmf-dist/tex/latex/oberdiek/telprint.sty | 254 --- Master/texmf-dist/tex/latex/oberdiek/twoopt.sty | 45 +- Master/texmf-dist/tex/latex/oberdiek/x-ascii.def | 43 + Master/texmf-dist/tex/latex/oberdiek/x-cp1250.def | 207 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp1252.def | 228 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp1257.def | 218 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp437.def | 266 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp850.def | 232 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp852.def | 203 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp858.def | 235 +++ Master/texmf-dist/tex/latex/oberdiek/x-cp865.def | 263 +++ Master/texmf-dist/tex/latex/oberdiek/x-dec-mcs.def | 156 ++ .../texmf-dist/tex/latex/oberdiek/x-iso-8859-1.def | 195 +++ .../tex/latex/oberdiek/x-iso-8859-10.def | 149 ++ .../tex/latex/oberdiek/x-iso-8859-13.def | 183 +++ .../tex/latex/oberdiek/x-iso-8859-14.def | 138 ++ .../tex/latex/oberdiek/x-iso-8859-15.def | 177 ++ .../tex/latex/oberdiek/x-iso-8859-16.def | 161 ++ .../texmf-dist/tex/latex/oberdiek/x-iso-8859-2.def | 165 ++ .../texmf-dist/tex/latex/oberdiek/x-iso-8859-3.def | 170 ++ .../texmf-dist/tex/latex/oberdiek/x-iso-8859-4.def | 171 ++ .../texmf-dist/tex/latex/oberdiek/x-iso-8859-9.def | 195 +++ Master/texmf-dist/tex/latex/oberdiek/x-mac-ce.def | 209 +++ .../texmf-dist/tex/latex/oberdiek/x-mac-roman.def | 263 +++ .../texmf-dist/tex/latex/oberdiek/x-nextstep.def | 240 +++ .../texmf-dist/tex/latex/oberdiek/zref-abspage.sty | 49 + Master/texmf-dist/tex/latex/oberdiek/zref-base.sty | 354 ++++ .../texmf-dist/tex/latex/oberdiek/zref-counter.sty | 51 + .../texmf-dist/tex/latex/oberdiek/zref-dotfill.sty | 83 + .../tex/latex/oberdiek/zref-hyperref.sty | 45 + .../tex/latex/oberdiek/zref-lastpage.sty | 52 + .../texmf-dist/tex/latex/oberdiek/zref-perpage.sty | 107 ++ .../texmf-dist/tex/latex/oberdiek/zref-savepos.sty | 81 + .../tex/latex/oberdiek/zref-titleref.sty | 167 ++ .../tex/latex/oberdiek/zref-totpages.sty | 49 + Master/texmf-dist/tex/latex/oberdiek/zref-user.sty | 61 + Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty | 269 +++ Master/texmf-dist/tex/latex/oberdiek/zref.sty | 60 + 87 files changed, 18090 insertions(+), 2369 deletions(-) create mode 100644 Master/texmf-dist/tex/latex/oberdiek/aliascnt.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/alphalph.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/atfidvips.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/atfipdftex.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/attachfile2.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/auxhook.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex create mode 100644 Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/colonequals.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/dtx-attach.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/embedfile.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/engord.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/grffile.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/holtxdoc.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/hypdestopt.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/hypdoc.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/ifpdf.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/ifvtex.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/inputenx.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-alias.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-math.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-name.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-slot.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-uc.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/ix-utf8enc.dfu create mode 100644 Master/texmf-dist/tex/latex/oberdiek/kvoptions.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/makerobust.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/pdfcrypt.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/picture.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/pmboxdraw.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/pmboxdrawenc.dfu create mode 100644 Master/texmf-dist/tex/latex/oberdiek/refcount.sty delete mode 100644 Master/texmf-dist/tex/latex/oberdiek/telprint.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-ascii.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp1250.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp1252.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp1257.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp437.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp850.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp852.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp858.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-cp865.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-dec-mcs.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-1.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-10.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-13.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-14.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-15.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-16.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-2.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-3.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-4.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-iso-8859-9.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-mac-ce.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-mac-roman.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/x-nextstep.def create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-abspage.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-base.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-counter.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-dotfill.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-hyperref.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-lastpage.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-perpage.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-savepos.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-titleref.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-totpages.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-user.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref-xr.sty create mode 100644 Master/texmf-dist/tex/latex/oberdiek/zref.sty (limited to 'Master/texmf-dist/tex/latex/oberdiek') diff --git a/Master/texmf-dist/tex/latex/oberdiek/aliascnt.sty b/Master/texmf-dist/tex/latex/oberdiek/aliascnt.sty new file mode 100644 index 00000000000..b9a48f30d1d --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/aliascnt.sty @@ -0,0 +1,82 @@ +%% +%% This is file `aliascnt.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% aliascnt.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 aliascnt.dtx +%% and the derived files +%% aliascnt.sty, aliascnt.pdf, aliascnt.ins, aliascnt.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{aliascnt}% + [2006/08/16 v1.1 Alias counter (HO)] +\newcommand*{\newaliascnt}[2]{% + \begingroup + \def\AC@glet##1{% + \global\expandafter\let\csname##1#1\expandafter\endcsname + \csname##1#2\endcsname + }% + \@ifundefined{c@#2}{% + \@nocounterr{#2}% + }{% + \@ifdefinable{c@#1}{% + \AC@glet{c@}% + \AC@glet{the}% + \AC@glet{theH}% + \AC@glet{p@}% + \expandafter\gdef\csname AC@cnt@#1\endcsname{#2}% + \expandafter\gdef\csname cl@#1\expandafter\endcsname + \expandafter{\csname cl@#2\endcsname}% + }% + }% + \endgroup +} +\newcommand*{\aliascntresetthe}[1]{% + \@ifundefined{AC@#1}{% + \PackageError{aliascnt}{% + `#1' is not an alias counter% + }\@ehc + }{% + \expandafter\let\csname the#1\expandafter\endcsname + \csname the\csname AC@cnt@#1\endcsname\endcsname + }% +} +\newcommand*{\AC@findrootcnt}[1]{% + \@ifundefined{AC@#1}{% + #1% + }{% + \expandafter\AC@findrootcnt\csname AC@cnt@#1\endcsname + }% +} +\def\AC@patch#1{% + \expandafter\let\csname AC@org@#1reset\expandafter\endcsname + \csname @#1reset\endcsname + \expandafter\def\csname @#1reset\endcsname##1##2{% + \csname AC@org@#1reset\endcsname{##1}{\AC@findrootcnt{##2}}% + }% +} +\RequirePackage{remreset} +\AC@patch{addto} +\AC@patch{removefrom} +\endinput +%% +%% End of file `aliascnt.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/alphalph.sty b/Master/texmf-dist/tex/latex/oberdiek/alphalph.sty deleted file mode 100644 index 047bff393c6..00000000000 --- a/Master/texmf-dist/tex/latex/oberdiek/alphalph.sty +++ /dev/null @@ -1,198 +0,0 @@ -%% -%% This is file `alphalph.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% alphalph.dtx (with options: `package') -%% -%% This file is part of the package `alphalph' for use with LaTeX2e. -%% -%% Function: Selecting shipout output pages. -%% -%% Copyright (C) 1999 Heiko Oberdiek. -%% -%% This program can be redistributed and/or modified -%% under the terms of the LaTeX Project Public License -%% distributed from CTAN archives in directory -%% macros/latex/base/lppl.txt; either version 1 of -%% the License, or (at your option) any later version. -%% -%% Please send error reports and suggestions for improvements to -%% Heiko Oberdiek . -%% -\ifx\ProvidesPackage\UnDeFiNeD -\begingroup\def\x#1#2#3[#4]#5{\endgroup\csname fi\endcsname -\immediate\write-1{Package: #3 #4 }}\x -\else -\ProvidesPackage{alphalph}% - [1999/04/13 v1.1 Converting numbers to letters (HO)] -\fi -%% \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 \~} -%% -\expandafter\edef\csname aa@atcode\endcsname{\the\catcode`\@ } -\catcode`\@=11 -\long\def\@ReturnAfterElseFi#1\else#2\fi{\fi#1} -\long\def\@ReturnAfterFi#1\fi{\fi#1} -\def\aa@alph#1{% - \ifcase#1% - @% - \or a\or b\or c\or d\or e\or f\or g\or h\or i\or j\or k\or l\or m% - \or n\or o\or p\or q\or r\or s\or t\or u\or v\or w\or x\or y\or z% - \else - @% - \fi -} -\def\aa@Alph#1{% - \ifcase#1% - @% - \or A\or B\or C\or D\or E\or F\or G\or H\or I\or J\or K\or L\or M% - \or N\or O\or P\or Q\or R\or S\or T\or U\or V\or W\or X\or Y\or Z% - \else - @% - \fi -} -\def\alphalph{\aa@callmake\aa@alph} -\def\AlphAlph{\aa@callmake\aa@Alph} -\def\aa@callmake#1#2{% - \expandafter\aa@make\expandafter{\number#2}#1% -} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname numexpr\endcsname\relax -\def\aa@make#1#2{% - \ifnum#1<1 - \else - \@ReturnAfterFi{% - \aa@process1;#1;1..#2% - }% - \fi -} -\def\aa@process#1;#2;{% - \ifnum#1=#2 - \expandafter\aa@getresult - \else - \@ReturnAfterFi{% - \expandafter\aa@process\number\aa@inc{#1}\aa@alphinc{;#2;}% - }% - \fi -} -\def\aa@getresult#1..#2{% - \aa@@getresult!#2#1..% -} -\def\aa@@getresult#1!#2#3.{% - \ifx\\#3\\% - \@ReturnAfterElseFi{#1}% ready - \else - \@ReturnAfterFi{% - \expandafter\expandafter\expandafter\expandafter - \expandafter\expandafter\expandafter - \aa@@getresult - \expandafter\expandafter\expandafter\expandafter - #2{#3}#1!#2% - }% - \fi -} -\def\aa@inc#1{% - \ifnum#1<9 - \aa@nextdigit{#1}% - \else - \aa@reverse#1!!% - \fi -} -\def\aa@nextdigit#1{\ifcase#1 1\or2\or3\or4\or5\or6\or7\or8\or9\fi} -\def\aa@reverse#1#2!#3!{% - \ifx\\#2\\% - \aa@addone#1#3!!% - \else - \@ReturnAfterFi{% - \aa@reverse#2!#1#3!% - }% - \fi -} -\def\aa@addone#1#2!#3!{% - \ifnum#1<9 - \expandafter\aa@lastreverse\number\aa@nextdigit#1 #2!#3!% - \else - \@ReturnAfterFi{% - \ifx\\#2\\% - 10#3% - \else - \@ReturnAfterFi{% - \aa@addone#2!0#3!% - }% - \fi - }% - \fi -} -\def\aa@lastreverse#1#2!#3!{% - \ifx\\#2\\% - #1#3% - \else - \@ReturnAfterFi{% - \aa@lastreverse#2!#1#3!% - }% - \fi -} -\def\aa@alphinc#1#2.{% - \ifx\\#2\\% - \@ReturnAfterElseFi{% - #11..% ready - }% - \else - \@ReturnAfterFi{% - \ifnum#2<26 - \@ReturnAfterElseFi{% - \expandafter\aa@alphinclast\expandafter - {\number\aa@inc{#2}}{#1}% - }% - \else - \@ReturnAfterFi{% - \aa@alphinc{#11.}% - }% - \fi - }% - \fi -} -\def\aa@alphinclast#1#2{#2#1.} -\else -\def\aa@make#1#2{% - \ifnum#1<1 - \else - \@ReturnAfterFi{% - \aa@eprocess#1;#2% - }% - \fi -} -\def\aa@eprocess#1;#2{% - \ifnum#1<27 - \@ReturnAfterElseFi{% - #2{#1}% - }% - \else - \@ReturnAfterFi{% - \expandafter\aa@eprocess\number\numexpr(#1-14)/26% - \expandafter\expandafter\expandafter;% - \expandafter\expandafter\expandafter#2% - #2{\numexpr#1-((#1-14)/26)*26}% - }% - \fi -} -\fi -\catcode`\@=\aa@atcode -\endinput -%% -%% End of file `alphalph.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/atfidvips.def b/Master/texmf-dist/tex/latex/oberdiek/atfidvips.def new file mode 100644 index 00000000000..9ee14c614ca --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/atfidvips.def @@ -0,0 +1,512 @@ +%% +%% This is file `atfidvips.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `dvips') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006 by Heiko Oberdiek +%% +%% 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 attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfidvips.def, atfipdftex.def, pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfipdftex.def}% + [2006/08/16 v2.2 attachfile2 driver for dvips (HO)] +\def\atfi@literal#1{% + \special{ps:atfi_dict begin{#1}atfi_?pdfmark end}% +} + +\def\atfi@header#1{% + \special{! #1}% +} + + +\atfi@header{% + userdict begin 20 dict dup /atfi_dict exch def end begin + /atfi_?pdfmark systemdict + dup /pdfmark known + { + /exec get def + }{ + /pop get def + } ifelse + { + % + % x y width height atfi_re -> + languagelevel 2 ge { + /atfi_rectfill { rectfill } bind def + /atfi_rectstroke { rectstroke } bind def + }{% + /atfi_rect { + /atfi_height exch def + /atfi_width exch def + /atfi_x exch def + /atfi_y exch def + newpath + atfi_x atfi_y moveto + atfi_x atfi_width add atfi_y lineto + atfi_x atfi_width add atfi_y atfi_height add lineto + atfi_x atfi_y atfi_height add lineto + closepath + } bind def + /atfi_rectfill { + atfi_rect fill + } bind def + /atfi_rectstroke { + atfi_rect stroke + } bind def + } ifelse + /atfi_curveto_v { + currentpoint 6 2 roll curveto + } bind def + /atfi_curveto_y { + 2 copy curveto + } bind def + % + % help macro for atfi_convert_date + /atfi_two { + dup 10 lt + { + 1 string cvs + exch 1 add exch + }{ + 2 string cvs + } ifelse + putinterval + } bind def + % + % atfi_convert_date -> (D:...Z) + /atfi_convert_date { + dup + /atfi_days exch 3600 idiv 24 idiv def + % calc date part + /atfi_year 1970 def + { + atfi_year 400 mod 0 eq + atfi_year 100 mod 0 ne + atfi_year 4 mod 0 eq + and or + { 366 } { 365 } ifelse + dup atfi_days lt + { + atfi_days exch sub /atfi_days exch def + /atfi_year atfi_year 1 add def + }{ + exit + } ifelse + } loop + /atfi_month 1 def + /atfi_days atfi_days 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 366 eq { 29 } { 28 } ifelse dup atfi_days lt + { + atfi_days exch sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 30 atfi_days lt + { + atfi_days 30 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 30 atfi_days lt + { + atfi_days 30 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 30 atfi_days lt + { + atfi_days 30 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 30 atfi_days lt + { + atfi_days 30 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + 31 atfi_days lt + { + atfi_days 31 sub /atfi_days exch def + /atfi_month atfi_month 1 add def + } if + } if + } if + } if + } if + } if + } if + } if + } if + } if + } { pop } ifelse + }{ pop } ifelse + % calc time part + 3600 24 mul mod + dup 3600 idiv dup /atfi_hour exch def + 3600 mul sub + dup 60 idiv dup /atfi_min exch def + 60 mul sub + /atfi_sec exch def + (D:19700101000000Z) + dup 2 atfi_year 4 string cvs putinterval + dup 6 atfi_month atfi_two + dup 8 atfi_days atfi_two + dup 10 atfi_hour atfi_two + dup 12 atfi_min atfi_two + dup 14 atfi_sec atfi_two + } bind def + % + % atfi_calc_checksum -> /CheckSum + % or returns nothing, if MD5Encode is not given + false + languagelevel 2 ge { + (MD5Encode) + { pop true or } + (MD5Encode) length string + /Filter + resourceforall + } if + { + /atfi_calc_checksum { + /atfi_checksum 16 string def + /atfi_file exch (r) file def + /atfi_md5sum atfi_checksum /MD5Encode filter def + % not too efficient to read and write byte by byte, + % using a buffer is probably faster + atfi_size { + atfi_file read + { + atfi_md5sum exch write + } if + } repeat + atfi_md5sum closefile + atfi_file closefile + /CheckSum atfi_checksum + } bind def + }{ + /atfi_calc_checksum { pop } bind def + } ifelse + % + /atfi_pttobp { 72.27 div 72 mul } bind def + /atfi_pdftodvipsx { 72.27 div Resolution mul } bind def + /atfi_pdftodvipsy { 72.27 div VResolution mul } bind def + % + } atfi_?pdfmark + end +} + +\def\atfi@GSAVE{gsave } +\def\atfi@GRESTORE{grestore } +\def\atfi@SETLINEWIDTH{setlinewidth } +\def\atfi@LINETO{lineto } +\def\atfi@MOVETO{moveto } +\def\atfi@STROKE{stroke } +\def\atfi@FILL{fill } +\def\atfi@FILLSTROKE#1#2{gsave #1 fill grestore #2 stroke } +\def\atfi@SETRGBCOLORSTROKE{setrgbcolor } +\def\atfi@SETRGBCOLORFILL{setrgbcolor } +\def\atfi@SETGRAYSTROKE{setgray } +\def\atfi@SETGRAYFILL{setgray } +\def\atfi@RECTFILL{atfi_rectfill } +\def\atfi@RECTSTROKEFILL#1#2#3{% + #3% + #1% + gsave atfi_rectfill grestore + #2% + #3% + atfi_rectstroke + #1% +} +\def\atfi@SETMITERLIMIT{setmiterlimit } +\def\atfi@SETFLAT{setflat } +\def\atfi@SETLINECAP{setlinecap } +\def\atfi@CURVETO{curveto } +\def\atfi@CURVETOV{atfi_curveto_v } +\def\atfi@CURVETOY{atfi_curveto_y } +\def\atfi@CLOSEPATH{closepath } +\def\atfi@SETLINEJOIN{setlinejoin } + + +\newcounter{atfi@obj} +\renewcommand*{\theatfi@obj}{% + {atfi_obj_\number\c@atfi@obj}% +} + + +\define@key{AtFi@file}{Size}{} + +\def\atfi@embedfile#1{% + \@ifundefined{atfi@fileobj@#1}{% + \atfi@pdfstringdef\atfi@psfilename{#1}% + \stepcounter{atfi@obj}% + \expandafter\xdef\csname atfi@fileobj@#1\endcsname{\theatfi@obj}% + \begingroup + \let\atfi@params\@empty + \@ifundefined{atfi@file@#1}{}{% + \edef\x{\noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}}% + \x + }% + \atfi@literal{% + /atfi_filename (\atfi@psfilename) def + atfi_filename status + { + % ok: file found + % save parameters of status command + /atfi_created exch def + /atfi_referenced exch def + /atfi_size exch def + pop % drop parameter "pages" (storage space), never needed + % ghostscript: + % created: stat.st_ctime + % referenced: stat.st_mtime + % stat.st_ctime: interpretion depends on operating system: + % * unix: inode change time (not interesting) + % * win32: probably creation time + % --> /CreationDate + % stat.st_mtime: modification time --> /ModDate + % time values are seconds since 1970-01-01, GMT + % TODO: ghostscript offers "getenv" for getting the value + % of an environment variable. That could be used to + % to detect windows and settingthe /CreationDate entry. + % TODO: how are these values interpreted by other distiller + % programs? + % + [ + /_objdef \theatfi@obj + /type /stream + /OBJ pdfmark + [ + \theatfi@obj + << + /Type /EmbeddedFile + \atfi@mimetype + /Params + << + \atfi@params + % + /Size atfi_size + % + /product where + { + pop + % check for ghostscript + product (Ghostscript) search + { + pop pop pop + % ghostscript is running + % + \ifatfi@creationdate + \else + false % TODO: test for windows + { + /CreationDate atfi_created atfi_convert_date + } if + \fi + \ifatfi@moddate + \else + /ModDate atfi_referenced atfi_convert_date + \fi + } if + % + % look for MD5Encode filter and calculate CheckSum + } if + \ifatfi@checksum + \else + atfi_filename atfi_calc_checksum + \fi + >> + >> + /PUT pdfmark + [ + \theatfi@obj + atfi_filename (r) file + /PUT pdfmark + [ + \theatfi@obj + /CLOSE pdfmark + }{ + % error: file not found + % currently nothing is done + } ifelse + }% + \endgroup + }{% + % file already embedded + }% +} + + +\def\atfi@xform@icon{% + \stepcounter{atfi@obj}% + \edef\atfi@appearanceobj{\theatfi@obj}% + \atfi@literal{% + [ + /_objdef \atfi@appearanceobj + /BBox [ + 0 + 0 + \strip@pt\wd\atfi@appearancebox\space atfi_pttobp + \strip@pt\dimexpr\dp\atfi@appearancebox + +\ht\atfi@appearancebox\relax\space atfi_pttobp + ] + /BP pdfmark + \csname atfi@acro\atfi@icon@icon @data\endcsname + [ + /EP pdfmark + }% +} +\def\atfi@xform{% + \stepcounter{atfi@obj}% + \edef\atfi@appearanceobj{\theatfi@obj}% + \begingroup + \setbox0=\hbox{% + \atfi@literal{% + [ + /_objdef \atfi@appearanceobj + /BBox [ + currentpoint + \strip@pt\dp\atfi@appearancebox\space sub + currentpoint + exch \strip@pt\wd\atfi@appearancebox\space add + exch \strip@pt\ht\atfi@appearancebox\space add + ] + /BP pdfmark + gsave + currentpoint + 2 copy translate + 72.27 Resolution div 72.27 VResolution div neg scale + exch neg exch neg translate + }% + \usebox{\atfi@appearancebox}% + \atfi@literal{% + grestore + [ + /EP pdfmark + }% + }% + % do not allocate any space for xobject definition + \dp0=\z@ + \ht0=\z@ + \wd0=\z@ + \mbox{\usebox0}% + \endgroup +} + +\def\atfi@refxform#1{% + \raisebox{-\atfi@appearancedepth}{% + \atfi@literal{% + gsave + currentpoint translate + Resolution 72 div VResolution neg 72 div scale + [ #1 /SP pdfmark + grestore + }% + \makebox[\atfi@appearancewidth]{}% + }% + \rule{0pt}{\atfi@appearanceheight}% +} + + +\def\atfi@insert@file@annot#1{% + \rule{0pt}{0pt}% + \ifatfi@appearance + \def\atfi@appearance@dict{% + /AP<<% + /N \atfi@appearanceobj + /R \atfi@appearanceobj + /D \atfi@appearanceobj + >>% + }% + \else + \let\atfi@appearance@dict\@empty + \fi + \@ifundefined{atfi@fsobj@#1}{% + \stepcounter{atfi@obj}% + \expandafter\xdef\csname atfi@fsobj@#1\endcsname{\theatfi@obj}% + \atfi@pdfstringdef\atfi@file{#1}% + \atfi@literal{% + [ + /_objdef \theatfi@obj + /type /dict + /OBJ pdfmark + [ + \theatfi@obj + << + /Type /Filespec + /F (\atfi@file) + /EF << + /F \csname atfi@fileobj@#1\endcsname + >> + >> + /PUT pdfmark + }% + }{% + }% + \atfi@literal{% + [ + /Subtype/FileAttachment% + \atfi@icon + \atfi@color + \atfi@author + \atfi@date + \atfi@annotname + \atfi@description + \atfi@subject + \atfi@appearance@dict + /F \theatfi@flags + /FS \csname atfi@fsobj@#1\endcsname + /Rect [ + currentpoint + \strip@pt\dimexpr\atfi@scale\atfi@appearancedepth\relax + \space atfi_pdftodvipsy add + currentpoint + exch \strip@pt\dimexpr\atfi@scale\atfi@appearancewidth\relax + \space atfi_pdftodvipsx add + exch \strip@pt\dimexpr\atfi@scale\atfi@appearanceheight\relax + \space atfi_pdftodvipsy sub + ] + /ANN pdfmark + }% + \rule{0pt}{\atfi@appearanceheight}% + \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% + \rule{\atfi@appearancewidth}{0pt}% +} + +\endinput +%% +%% End of file `atfidvips.def'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/atfipdftex.def b/Master/texmf-dist/tex/latex/oberdiek/atfipdftex.def new file mode 100644 index 00000000000..34954a08dc4 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/atfipdftex.def @@ -0,0 +1,151 @@ +%% +%% This is file `atfipdftex.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `pdftex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006 by Heiko Oberdiek +%% +%% 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 attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfidvips.def, atfipdftex.def, pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfipdftex.def}% + [2006/08/16 v2.2 attachfile2 driver for pdfTeX (HO)] +\let\atfi@literal\pdfliteral + + +\def\atfi@GSAVE{q } +\def\atfi@GRESTORE{Q } +\def\atfi@SETLINEWIDTH{w } +\def\atfi@LINETO{l } +\def\atfi@MOVETO{m } +\def\atfi@STROKE{S } +\def\atfi@FILL{f } +\def\atfi@FILLSTROKE#1#2{#1#2B } +\def\atfi@SETRGBCOLORSTROKE{RG } +\def\atfi@SETRGBCOLORFILL{rg } +\def\atfi@SETGRAYSTROKE{G } +\def\atfi@SETGRAYFILL{g } +\def\atfi@RECTFILL{re f } +\def\atfi@RECTSTROKEFILL#1#2#3{#1#2#3re B } +\def\atfi@SETMITERLIMIT{M } +\def\atfi@SETFLAT{i } +\def\atfi@SETLINECAP{J } +\def\atfi@CURVETO{c } +\def\atfi@CURVETOV{v } +\def\atfi@CURVETOY{y } +\def\atfi@CLOSEPATH{h } +\def\atfi@SETLINEJOIN{j } + + +\define@key{AtFi@file}{Size}{% + \edef\atfi@params{\atfi@params/Size #1}% +} + +\def\atfi@embedfile#1{% + \@ifundefined{atfi@fileobj@#1}{% + \begingroup + \let\atfi@params\@empty + \@ifundefined{atfi@file@#1}{}{% + \edef\x{\noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}}% + \x + }% + \ifx\atfi@params\@empty + \else + \edef\atfi@params{/Params<<\atfi@params>>}% + \fi + \immediate\pdfobj stream attr {% + /Type/EmbeddedFile% + \atfi@mimetype + \atfi@params + } file {#1}% + \expandafter\xdef\csname atfi@fileobj@#1\endcsname{\the\pdflastobj}% + \endgroup + }{% + % file already embedded + }% +} + + +\def\atfi@xform{% + \immediate\pdfxform\atfi@appearancebox + \edef\atfi@appearanceobj{\the\pdflastxform}% +} +\let\atfi@xform@icon\atfi@xform + +\def\atfi@refxform#1{% + \pdfrefxform#1\relax +} + + +\def\atfi@insert@file@annot#1{% + \rule{0pt}{0pt}% + \ifatfi@appearance + \def\atfi@appearance@dict{% + /AP<<% + /N \atfi@appearanceobj\space 0 R% + /R \atfi@appearanceobj\space 0 R% + /D \atfi@appearanceobj\space 0 R% + >>% + }% + \else + \let\atfi@appearance@dict\@empty + \fi + \@ifundefined{atfi@fsobj@#1}{% + \atfi@pdfstringdef\atfi@file{#1}% + \immediate\pdfobj{% + <<% + /Type/Filespec% + /F(\atfi@file)% + /EF<<% + /F \@nameuse{atfi@fileobj@#1} 0 R% + >>% + >>% + }% + \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% + \the\pdflastobj + }% + }{% + }% + \pdfannot width \atfi@scale\atfi@appearancewidth + height \atfi@scale\atfi@appearanceheight + depth \atfi@scale\atfi@appearancedepth {% + /Subtype/FileAttachment% + \atfi@icon + \atfi@color + \atfi@author + \atfi@date + \atfi@annotname + \atfi@description + \atfi@subject + \atfi@appearance@dict + /F \theatfi@flags + /FS \@nameuse{atfi@fsobj@#1} 0 R% + }% + \rule{0pt}{\atfi@appearanceheight}% + \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% + \rule{\atfi@appearancewidth}{0pt}% +} + +\endinput +%% +%% End of file `atfipdftex.def'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/attachfile2.sty b/Master/texmf-dist/tex/latex/oberdiek/attachfile2.sty new file mode 100644 index 00000000000..b70634e2ab3 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/attachfile2.sty @@ -0,0 +1,738 @@ +%% +%% This is file `attachfile2.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006 by Heiko Oberdiek +%% +%% 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 attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfidvips.def, atfipdftex.def, pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{attachfile2}% + [2006/08/16 v2.2 attach files into PDF (HO)] +\RequirePackage{ifpdf} +\RequirePackage{keyval} +\RequirePackage{color} +\RequirePackage{kvoptions}[2006/08/17] + + +\RequirePackage{hyperref} + +\def\atfi@pdfstringdef#1#2{% + \pdfstringdef\atfi@temp@string{#2}% + \edef#1{\atfi@temp@string}% +} + + +\def\atfi@hexdigit#1{% + \ifcase#1% + 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or 8\or 9\or + a\or b\or c\or d\or e\or f% + \fi +} +\def\atfi@hexchar#1{% + \atfi@hexdigit{\numexpr\dimexpr.0625\dimexpr`#1sp\relax\relax\relax}% + \atfi@hexdigit{% + \numexpr`#1-16*\dimexpr.0625\dimexpr`#1sp\relax\relax\relax + }% +} +\def\atfi@tohex#1{% + \ifx\relax#1% + \else + \atfi@hexchar{#1}% + \expandafter\atfi@tohex + \fi +} + + +\def\atfi@converttoname#1#2{% + \edef#1{#2}% + \@onelevel@sanitize#1% + \edef#1{\expandafter\atfi@spacetoother#1 \relax}% + \edef#1{\expandafter\atfi@converttokens#1\relax}% +} + +\edef\atfi@hash{\string#}% +\catcode`\ =12\relax% +\def\atfi@space{ }% +\catcode`\ =10\relax% + +\def\atfi@spacetoother#1 #2\relax{% + #1% + \ifx\\#2\\% + \else + \atfi@space + \@ReturnAfterFi{% + \atfi@spacetoother #2\relax + }% + \fi +} +\long\def\@ReturnAfterFi#1\fi{\fi#1} + +\def\atfi@converttokens#1{% + \ifx\relax#1% + \else + \ifnum`#1<33 % + \ifcase`#1% + % drop illegal zero + \else + \atfi@hash\atfi@hexchar#1% + \fi + \else + \ifnum`#1>126 % + \atfi@hash\atfi@hexchar#1% + \else + \ifnum`#1=40 % ( + \atfi@hash 28% + \else\ifnum`#1=41 % ) + \atfi@hash 29% + \else\ifnum`#1=60 % < + \atfi@hash 3c% + \else\ifnum`#1=62 % > + \atfi@hash 3e% + \else\ifnum`#1=91 % [ + \atfi@hash 5b% + \else\ifnum`#1=93 % ] + \atfi@hash 5d% + \else\ifnum`#1=123 % { + \atfi@hash 7b% + \else\ifnum`#1=125 % } + \atfi@hash 7d% + \else\ifnum`#1=47 % / + \atfi@hash 2f% + \else\ifnum`#1=37 % % + \atfi@hash 25% + \else + #1% + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi + \fi + \expandafter\atfi@converttokens + \fi +} + + +\newif\ifatfi@draft +\let\atfi@finaltrue\atfi@draftfalse +\let\atfi@finalfalse\atfi@drafttrue +\define@key{AtFi}{final}[true]{% + \csname atfi@final#1\endcsname +} +\define@key{AtFi}{draft}[true]{% + \csname atfi@draft#1\endcsname +} + +\def\atfi@mimetype{} +\define@key{AtFi}{mimetype}{% + \atfi@converttoname\atfi@mimetype{#1}% + \edef\atfi@mimetype{/Subtype/\atfi@mimetype}% +} + +\define@key{AtFi}{icon}{% + \def\atfi@icon{/Name/#1}% + \def\atfi@icon@icon{#1}% +} +\setkeys{AtFi}{icon=PushPin} + +\define@key{AtFi}{color}{% + \def\atfi@color{/C[#1]}% + \def\atfi@color@rgb{#1}% +} +\setkeys{AtFi}{color=1 0.9255 0.7765} + +\def\atfi@pad@ii#1{% + \ifnum#1>9 + \number#1% + \else + 0\number#1% + \fi% +} +\let\atfi@timezone\@empty +\define@key{AtFi}{timezone}{\def\atfi@timezone{#1}} +\edef\atfi@time{\the\time} +\def\atfi@hours{% + \numexpr\dimexpr0.01667\dimexpr\atfi@time sp\relax\relax\relax +} +\def\atfi@minutes{% + \numexpr\atfi@time-60*\atfi@hours\relax +} +\def\atfi@seconds{0} +\def\atfi@date{% + /M(D:\the\year + \atfi@pad@ii\month + \atfi@pad@ii\day + \atfi@pad@ii\atfi@hours + \atfi@pad@ii\atfi@minutes + \atfi@pad@ii\atfi@seconds + \atfi@timezone)% +} +\define@key{AtFi}{date}{% + \atfi@pdfstringdef\atfi@date{#1}% + \edef\atfi@date{/M(\atfi@date)}% +} + +\let\atfi@annotname\@empty +\define@key{AtFi}{annotname}{% + \atfi@pdfstringdef\atfi@annotname{#1}% + \edef\atfi@annotname{/NM(\atfi@annotname)}% +} + +\DeclareRobustCommand{\atfi@pdfstringdef}[2]{% + \pdfstringdef\atfi@temp@string{#2}% + \edef#1{\atfi@temp@string}% +} + +\def\atfi@author{} +\define@key{AtFi}{author}{% + \atfi@pdfstringdef\atfi@author{#1}% + \edef\atfi@author{/T(\atfi@author)}% +} + +\def\atfi@description{} +\define@key{AtFi}{description}{% + \atfi@pdfstringdef\atfi@description{#1}% + \edef\atfi@description{/Contents(\atfi@description)}% +} + +\def\atfi@subject{} +\define@key{AtFi}{subject}{% + \atfi@pdfstringdef\atfi@subject{#1}% + \edef\atfi@subject{/Subj(\atfi@subject)}% +} + +\newif\ifatfi@print +\atfi@printtrue +\define@key{AtFi}{print}[true]{\csname atfi@print#1\endcsname} + +\newif\ifatfi@zoom +\atfi@zoomtrue +\define@key{AtFi}{zoom}[true]{\csname atfi@zoom#1\endcsname} + +\newif\ifatfi@appearance +\atfi@appearancetrue +\define@key{AtFi}{appearance}[true]{% + \csname atfi@appearance#1\endcsname +} + +\def\atfi@scale{1} +\define@key{AtFi}{scale}[1]{% + \def\atfi@scale{#1}% +} + +\newif\ifatfi@nofiles +\atfi@nofilesfalse +\define@key{AtFi}{nofiles}[true]{% + \csname atfi@nofiles#1\endcsname +} + +\let\atfi@driver\@empty +\def\atfi@driver@pdftex{pdftex} +\def\atfi@driver@dvips{dvips} + +\define@key{AtFi}{pdftex}[true]{% + \let\atfi@driver\atfi@driver@pdftex +} +\define@key{AtFi}{dvips}[true]{% + \let\atfi@driver\atfi@driver@dvips +} + +\DeclareRobustCommand{\attachfilesetup}[1]{\setkeys{AtFi}{#1}} + +\InputIfFileExists{attachfile.cfg}{}{} + +\ProcessKeyvalOptions{AtFi} + + +\ifpdf + % ignoring other driver options + \let\atfi@driver\atfi@driver@pdftex +\else + \ifx\atfi@driver\@empty + \PackageWarningNoLine{attachfile2}{% + Driver is not specified,\MessageBreak + enforce draft settings% + }% + \atfi@drafttrue + \fi +\fi + + +\DeclareRobustCommand{\notextattachfile}[2][]{% + \begingroup + \setkeys{AtFi}{#1}% + \ifatfi@print + \def\atfi@textcolor(##1 ##2 ##3)##4{% + \textcolor[rgb]{##1,##2,##3}{##4}}% + \expandafter\atfi@textcolor\expandafter + (\atfi@color@rgb){#2\strut}% + \else + \setbox0=\hbox{#2\strut}% + \makebox[\wd0]{}% + \fi + \endgroup +} + +\ifatfi@draft + \def\atfi@dummy@pushpin{% + \raisebox{-1.25bp}{\parbox[b][14bp]{24bp}{}}% + } + \DeclareRobustCommand{\textattachfile}[3][]{% + \notextattachfile[#1]{#3}% + } + \DeclareRobustCommand{\noattachfile}[1][]{% + \notextattachfile[#1]{\atfi@dummy@pushpin}% + } + \DeclareRobustCommand{\attachfile}[2][]{% + \noattachfile[#1]% + } + \expandafter\endinput +\fi + + +\input{atfi\atfi@driver.def} + + +\def\atfi@acroGraph@data{% + \atfi@GSAVE + 0.5 \atfi@SETGRAYFILL + 1.1133 0 20.7202 18.2754 \atfi@RECTFILL + 0 \atfi@SETFLAT + 0.5 \atfi@SETLINEWIDTH + 4 \atfi@SETMITERLIMIT + \atfi@RECTSTROKEFILL{% + 1 \atfi@SETGRAYFILL + }{% + 0 \atfi@SETGRAYSTROKE + }{% + 0.25 1.6453 20.145 17.7715 % + }% + 0 \atfi@SETGRAYFILL + 2.7319 4.1367 3.9571 13.8867 \atfi@RECTFILL + 8.7031 4.1367 3.9571 9.8867 \atfi@RECTFILL + 14.7471 4.1367 3.9571 11.8867 \atfi@RECTFILL + \atfi@color@rgb\space \atfi@SETRGBCOLORFILL + 1.689 3.0938 3.9571 13.8867 \atfi@RECTFILL + 7.6602 3.0938 3.9571 9.8867 \atfi@RECTFILL + 13.7041 3.0938 3.9571 11.8867 \atfi@RECTFILL + \atfi@GRESTORE +} +\def\atfi@acroGraph{% + \raisebox{-1.5bp}{\parbox[b][20bp]{22bp}{% + \rule{0pt}{0pt}\atfi@literal{\atfi@acroGraph@data}}% + }% +} +\newcommand{\atfi@acroPaperclip@data}{% + \atfi@GSAVE + 0.75 \atfi@SETGRAYSTROKE + 0 \atfi@SETFLAT + 2.5 \atfi@SETLINEWIDTH + 1 \atfi@SETLINECAP + 4 \atfi@SETMITERLIMIT + 1.9619 11.7559 \atfi@MOVETO + 1.9619 3.3037 1.9619 2.5059 \atfi@CURVETOV + 1.9619 1.707 4.0947 1.25 \atfi@CURVETOY + 7.4141 1.25 \atfi@LINETO + 9.4292 1.8223 9.4292 3.3066 \atfi@CURVETOV + 9.4292 4.79 9.4292 16.8945 \atfi@CURVETOY + 9.7852 18.1514 8.481 18.1514 \atfi@CURVETOV + 7.1768 18.1514 5.1616 18.1514 \atfi@CURVETOY + 3.8574 17.9209 3.8574 16.8945 \atfi@CURVETOV + 3.8574 15.8652 3.8574 6.6172 \atfi@CURVETOY + 4.3325 5.418 5.1025 5.418 \atfi@CURVETOV + 5.8726 5.418 6.5845 5.418 \atfi@CURVETOY + 7.6812 5.6455 7.6812 6.4736 \atfi@CURVETOV + 7.6812 7.3027 7.6812 11.5264 \atfi@CURVETOY + \atfi@STROKE + 0 \atfi@SETGRAYSTROKE + 1.2495 12.4404 \atfi@MOVETO + 1.2495 3.9883 1.2495 3.1895 \atfi@CURVETOV + 1.2495 2.3906 3.3833 1.9326 \atfi@CURVETOY + 6.7026 1.9326 \atfi@LINETO + 8.7178 2.5068 8.7178 3.9902 \atfi@CURVETOV + 8.7178 5.4736 8.7178 17.5781 \atfi@CURVETOY + 9.0732 18.834 7.769 18.834 \atfi@CURVETOV + 6.4653 18.834 4.4497 18.834 \atfi@CURVETOY + 3.146 18.6055 3.146 17.5781 \atfi@CURVETOV + 3.146 16.5498 3.146 7.3018 \atfi@CURVETOY + 3.6201 6.1016 4.3911 6.1016 \atfi@CURVETOV + 5.1611 6.1016 5.873 6.1016 \atfi@CURVETOY + 6.9692 6.3301 6.9692 7.1572 \atfi@CURVETOV + 6.9692 7.9863 6.9692 12.21 \atfi@CURVETOY + \atfi@STROKE + \atfi@color@rgb\space \atfi@SETRGBCOLORSTROKE + 1 \atfi@SETLINEWIDTH + 1.2495 12.4404 \atfi@MOVETO + 1.2495 3.9883 1.2495 3.1895 \atfi@CURVETOV + 1.2495 2.3906 3.3833 1.9326 \atfi@CURVETOY + 6.7026 1.9326 \atfi@LINETO + 8.7178 2.5068 8.7178 3.9902 \atfi@CURVETOV + 8.7178 5.4736 8.7178 17.5781 \atfi@CURVETOY + 9.0732 18.834 7.769 18.834 \atfi@CURVETOV + 6.4653 18.834 4.4497 18.834 \atfi@CURVETOY + 3.146 18.6055 3.146 17.5781 \atfi@CURVETOV + 3.146 16.5498 3.146 7.3018 \atfi@CURVETOY + 3.6201 6.1016 4.3911 6.1016 \atfi@CURVETOV + 5.1611 6.1016 5.873 6.1016 \atfi@CURVETOY + 6.9692 6.3301 6.9692 7.1572 \atfi@CURVETOV + 6.9692 7.9863 6.9692 12.21 \atfi@CURVETOY + \atfi@STROKE + \atfi@GRESTORE +} +\def\atfi@acroPaperclip{% + \raisebox{-1.25bp}{\parbox[b][21bp]{12bp}{% + \rule{0pt}{0pt}\atfi@literal{\atfi@acroPaperclip@data}}% + }% +} +\def\atfi@acroPushPin@data{% + \atfi@GSAVE + 1 \atfi@SETLINEWIDTH + 1 6 \atfi@MOVETO + 11 6 \atfi@LINETO + 11 13 \atfi@LINETO + 12 13 \atfi@LINETO + 14 11 \atfi@LINETO + 21 11 \atfi@LINETO + 22 12 \atfi@LINETO + 23 12 \atfi@LINETO + 23 2 \atfi@LINETO + 22 2 \atfi@LINETO + 21 3 \atfi@LINETO + 14 3 \atfi@LINETO + 12 1 \atfi@LINETO + 11 1 \atfi@LINETO + 11 6 \atfi@LINETO + \atfi@FILLSTROKE{% + \atfi@color@rgb\space\atfi@SETRGBCOLORFILL + }{% + 0 \atfi@SETGRAYSTROKE + }% + 0.5 \atfi@SETGRAYSTROKE + 0 7 \atfi@MOVETO + 10 7 \atfi@LINETO + 10 8 \atfi@LINETO + 1 8 \atfi@LINETO + \atfi@STROKE + 1 \atfi@SETGRAYSTROKE + 12 12 \atfi@MOVETO + 14 10 \atfi@LINETO + 22 10 \atfi@LINETO + 22 11 \atfi@LINETO + \atfi@STROKE + \atfi@GRESTORE +} +\def\atfi@acroPushPin{% + \raisebox{-1.25bp}{\parbox[b][14bp]{24bp}{% + \rule{0pt}{0pt}\atfi@literal{\atfi@acroPushPin@data}}% + }% +} +\def\atfi@acroTag@data{% + \atfi@GSAVE + 0.5 \atfi@SETGRAYFILL + 10.0542 14.9873 \atfi@MOVETO + 24.27 14.9873 \atfi@LINETO + 25.252 14.0059 \atfi@LINETO + 25.252 1.1455 \atfi@LINETO + 24.1064 0 \atfi@LINETO + 9.9609 0 \atfi@LINETO + 6.0327 6.0088 \atfi@LINETO + 6.0327 9.002 \atfi@LINETO + 10.0542 14.9873 \atfi@LINETO + 9.3994 9.376 \atfi@MOVETO + 8.5215 9.376 7.8096 8.5596 7.8096 7.5527 \atfi@CURVETO + 7.8096 6.5449 8.5215 5.7285 9.3994 5.7285 \atfi@CURVETO + 10.2778 5.7285 10.9897 6.5449 10.9897 7.5527 \atfi@CURVETO + 10.9897 8.5596 10.2778 9.376 9.3994 9.376 \atfi@CURVETO + \atfi@CLOSEPATH + \atfi@FILL + 0 \atfi@SETFLAT + 0.5 \atfi@SETLINEWIDTH + 4 \atfi@SETMITERLIMIT + 1 \atfi@SETLINEJOIN + 8.5107 16.5313 \atfi@MOVETO + 22.7266 16.5313 \atfi@LINETO + 23.7085 15.5488 \atfi@LINETO + 23.7085 2.6895 \atfi@LINETO + 22.563 1.543 \atfi@LINETO + 8.4175 1.543 \atfi@LINETO + 4.4893 7.5527 \atfi@LINETO + 4.4893 10.5449 \atfi@LINETO + 8.5107 16.5313 \atfi@LINETO + 7.856 10.9199 \atfi@MOVETO + 6.978 10.9199 6.2661 10.1035 6.2661 9.0957 \atfi@CURVETO + 6.2661 8.0879 6.978 7.2715 7.856 7.2715 \atfi@CURVETO + 8.7344 7.2715 9.4463 8.0879 9.4463 9.0957 \atfi@CURVETO + 9.4463 10.1035 8.7344 10.9199 7.856 10.9199 \atfi@CURVETO + \atfi@CLOSEPATH + \atfi@FILLSTROKE{% + \atfi@color@rgb\space\atfi@SETRGBCOLORFILL + }{% + 0 \atfi@SETGRAYSTROKE + }% + 1 \atfi@SETLINEWIDTH + 12.3291 12.2656 \atfi@MOVETO + 21.1206 12.2656 \atfi@LINETO + \atfi@STROKE + 12.3291 9.1797 \atfi@MOVETO + 21.1206 9.1797 \atfi@LINETO + \atfi@STROKE + 12.3291 6.1875 \atfi@MOVETO + 21.1206 6.1875 \atfi@LINETO + \atfi@STROKE + % 0 \atfi@SETGRAYSTROKE % redundant? + 0.5 \atfi@SETLINEWIDTH + 0 9.0488 \atfi@MOVETO + 6.2661 9.0957 \atfi@LINETO + \atfi@STROKE + 1.4028 5.2148 \atfi@MOVETO + 1.4028 9.6094 \atfi@LINETO + 1.6831 10.6387 2.4316 10.6387 \atfi@CURVETOV + 3.6475 10.6387 3.5542 9.0488 \atfi@CURVETOY + \atfi@STROKE + \atfi@GRESTORE +} +\DeclareRobustCommand{\atfi@acroTag}{% + \raisebox{-1.6bp}{\parbox[b][17bp]{25bp}{% + \rule{0pt}{0pt}\atfi@literal{\atfi@acroTag@data}}% + }% +} + + +\def\attachfile@timezone#1{% + \ifx\\#1\\% + % no timezone information given + \else + \def\atfi@timezone{#1}% + \fi +} +\newcommand*{\attachfile@file}[2][]{% + \ifx\\#2\\% + \PackageError{attachfile2}{Empty file name}\@ehc + \else + \edef\atfi@restore{\uccode0=\the\uccode0 \relax}% + \let\atfi@filename\@empty + \atfi@getfilename#2\relax\relax + \atfi@restore + \@namedef{atfi@file@\atfi@filename}{#1}% + \fi +} +\begingroup + \catcode0=12 % + \gdef\atfi@getfilename#1#2{% + \ifx\relax#1% + \else + \uccode0=\numexpr 16*\atfi@hexnum{#1} + \atfi@hexnum{#2}\relax + \uppercase{% + \edef\atfi@filename{% + \atfi@filename^^@% + }% + }% + \expandafter\atfi@getfilename + \fi + }% +\endgroup +\def\atfi@hexnum#1{% + \ifnum`#1<58 % + \numexpr `#1-48\relax + \else + \numexpr `#1-87\relax + \fi +} + +\InputIfFileExists{\jobname.atfi}{}{}% + +\newif\ifatfi@checksum +\define@key{AtFi@file}{CheckSum}{% + \atfi@checksumtrue + \edef\atfi@params{\atfi@params/CheckSum<#1>}% +} +\newif\ifatfi@creationdate +\define@key{AtFi@file}{CreationDate}{% + \atfi@creationdatetrue + \edef\atfi@params{\atfi@params/CreationDate(D:#1\atfi@timezone)}% +} +\newif\ifatfi@moddate +\define@key{AtFi@file}{ModDate}{% + \atfi@moddatetrue + \edef\atfi@params{\atfi@params/ModDate(D:#1\atfi@timezone)}% +} + + +\if@filesw +\else + \atfi@nofilestrue +\fi +\ifatfi@nofiles + \PackageInfo{attachfile2}{% + File `\jobname.atfi' will not be written because of\MessageBreak + \string\nofiles\space or option `nofiles'% + }% + \let\atfi@writefile\@gobble +\else + \newwrite\atfi@stream + \immediate\openout\atfi@stream=\jobname.atfi + \immediate\write\atfi@stream{% + \string\attachfile@timezone{\atfi@timezone}% + }% + \def\atfi@writefile#1{% + \begingroup + \def\file{#1}% + \@onelevel@sanitize\file + \edef\file{\@firstofone{\expandafter\atfi@replace\file} \@nil}% + \edef\file{\expandafter\atfi@tohex\file\relax}% + \immediate\write\atfi@stream{% + \string\attachfile@file[% + \@ifundefined{atfi@file@#1}{}{\@nameuse{atfi@file@#1}}% + ]{\file}% + }% + \endgroup + }% +\fi + +\def\atfi@attachfile#1#2{% + \@ifundefined{atfi@fileobj@#2}{% + \atfi@writefile{#2}% + }{% + % don't need duplicates + }% + \setkeys{AtFi}{#1}% + \atfi@embedfile{#2}% + \atfi@set@appearance@icon + \atfi@flags@to@int + \atfi@insert@file@annot{#2}% + \endgroup +} + + +\def\atfi@replace#1 #2\@nil{% + #1% + \ifx\\#2\\% + \else + \atfi@space + \@ReturnAfterFi{% + \atfi@replace#2\@nil + }% + \fi +}% + +\long\def\@ReturnAfterFi#1\fi{\fi#1} + + +\newlength{\atfi@appearancewidth} +\newlength{\atfi@appearanceheight} +\newlength{\atfi@appearancedepth} +\newsavebox{\atfi@appearancebox} + +\def\atfi@set@appearance@icon{% + \@ifundefined{atfi@appobj@\atfi@icon@icon}{% + \savebox{\atfi@appearancebox}{\@nameuse{atfi@acro\atfi@icon@icon}}% + \expandafter\xdef\csname atfi@appwidth@\atfi@icon@icon\endcsname{% + \the\wd\atfi@appearancebox + }% + \expandafter\xdef\csname atfi@appheight@\atfi@icon@icon\endcsname{% + \the\ht\atfi@appearancebox + }% + \expandafter\xdef\csname atfi@appdepth@\atfi@icon@icon\endcsname{% + \the\dp\atfi@appearancebox + }% + \atfi@xform@icon + \global\expandafter\let\csname atfi@appobj@\atfi@icon@icon\endcsname + \atfi@appearanceobj + }{% + }% + % optimization: \setlength dropped + \atfi@appearancewidth=\@nameuse{atfi@appwidth@\atfi@icon@icon}\relax + \atfi@appearanceheight=\@nameuse{atfi@appheight@\atfi@icon@icon}\relax + \atfi@appearancedepth=\@nameuse{atfi@appdepth@\atfi@icon@icon}\relax + \expandafter\let\expandafter\atfi@appearanceobj + \csname atfi@appobj@\atfi@icon@icon\endcsname +} + +\def\atfi@set@appearance#1{% + \savebox{\atfi@appearancebox}{#1}% + \atfi@appearancewidth=\wd\atfi@appearancebox + \atfi@appearanceheight=\ht\atfi@appearancebox + \atfi@appearancedepth=\dp\atfi@appearancebox + \atfi@xform +} + +\newcounter{atfi@flags} +\DeclareRobustCommand{\atfi@flags@to@int}{% + \setcounter{atfi@flags}{0}% + \ifatfi@print + \addtocounter{atfi@flags}{4}% + \fi% + \ifatfi@zoom + \else + \addtocounter{atfi@flags}{8}% + \fi% +} + +\def\atfi@textattachfile#1#2{% + \endgroup + \atfi@textattachfile@i{#1}{#2}% +} +\def\atfi@textattachfile@i#1#2#3{% + \setkeys{AtFi}{#1}% + \atfi@embedfile{#2}% + \def\atfi@textcolor(##1 ##2 ##3)##4{% + \textcolor[rgb]{##1,##2,##3}{##4}}% + \atfi@set@appearance{% + \expandafter\atfi@textcolor\expandafter + (\atfi@color@rgb){#3\strut}}% + \atfi@flags@to@int + \atfi@insert@file@annot{#2}% + \endgroup +} + +\DeclareRobustCommand{\attachfile}[1][]{% + \begingroup + \let\do\@makeother + \dospecials + \catcode`\{=1\relax + \catcode`\}=2\relax + \atfi@attachfile{#1}% +} +\DeclareRobustCommand{\textattachfile}[1][]{% + \begingroup + \begingroup + \let\do\@makeother + \dospecials + \catcode`\{=1\relax + \catcode`\}=2\relax + \atfi@textattachfile{#1}% +} +\DeclareRobustCommand{\noattachfile}[1][]{% + \begingroup + \setkeys{AtFi}{#1}% + \atfi@set@appearance@icon + \ifatfi@print + \expandafter\atfi@refxform\csname atfi@appobj@\atfi@icon@icon\endcsname + \else + \makebox[\atfi@appearancewidth]{}% + \fi + \endgroup +} + +\endinput +%% +%% End of file `attachfile2.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/auxhook.sty b/Master/texmf-dist/tex/latex/oberdiek/auxhook.sty new file mode 100644 index 00000000000..74836d90fa3 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/auxhook.sty @@ -0,0 +1,102 @@ +%% +%% This is file `auxhook.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% auxhook.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 auxhook.dtx +%% and the derived files +%% auxhook.sty, auxhook.pdf, auxhook.ins, auxhook.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{auxhook}% + [2006/05/31 v1.0 Hooks for auxiliary files (HO)] +\providecommand*{\@beginmainauxhook}{} +\providecommand*{\@beginpartauxhook}{} +\newcommand{\AddLineBeginMainAux}[1]{% + \g@addto@macro\@beginmainauxhook{% + \immediate\write\@mainaux{#1}% + }% +} +\newcommand{\AddLineBeginPartAux}[1]{% + \g@addto@macro\@beginpartauxhook{% + \immediate\write\@partaux{#1}% + }% +} +\newcommand{\AddLineBeginAux}[1]{% + \AddLineBeginMainAux{#1}% + \AddLineBeginPartAux{#1}% +} +\begingroup + \def\y#1\immediate\write\@mainaux#2#3\auxhook@nil{% + \toks@{% + #1\immediate\write\@mainaux{#2}% + \@beginmainauxhook + #3% + }% + \xdef\document{\the\toks@}% + \endgroup + }% + \def\x#1\immediate\write\@mainaux#2#3\auxhook@nil{% + \toks@{#3}% + \edef\x{\the\toks@}% + \ifx\x\@empty + \PackageWarningNoLine{auxhook}{% + Cannot patch \string\document,\MessageBreak + use \string\AtBeginDocument\space instead% + }% + \endgroup + \AtBeginDocument{% + \if@filesw + \@beginmainauxhook + \fi + }% + \else + \expandafter\y\document\auxhook@nil + \fi + }% +\expandafter\x\document\immediate\write\@mainaux{}\auxhook@nil +\begingroup + \def\y#1\immediate\write\@partaux#2#3\auxhook@nil{% + \endgroup + \def\@include##1 {% + #1\immediate\write\@partaux{#2}% + \@beginpartauxhook + #3% + }% + }% + \def\x#1\immediate\write\@partaux#2#3\auxhook@nil{% + \toks@{#3}% + \edef\x{\the\toks@}% + \ifx\x\@empty + \PackageWarningNoLine{auxhook}{% + Cannot patch \string\@include,\MessageBreak + patch dropped% + }% + \endgroup + \else + \expandafter\y\@include{##1} \auxhook@nil + \fi + }% +\expandafter\x\@include{#1} \immediate\write\@partaux{}\auxhook@nil +\endinput +%% +%% End of file `auxhook.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty new file mode 100644 index 00000000000..859617996b9 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-base.sty @@ -0,0 +1,1706 @@ +%% +%% This is file `bmpsize-base.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `base') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\ProvidesPackage{bmpsize-base}% + [2006/08/24 v1.0 Basic part of bmpsize (HO)] +\RequirePackage{fp-basic} +\RequirePackage{fp-snap} +\long\def\@bmpsize@plain@loop#1\repeat{% + \def\iterate{% + #1\relax + \expandafter\iterate\fi + }% + \iterate + \let\iterate\relax +} +\newif\ifbmpsize@ok +\let\@bmpsize@ok\bmpsize@oktrue + +\newif\if@bmpsize@bigendian +\newif\if@bmpsize@absnum +\newif\if@bmpsize@user@resolution +\newif\if@bmpsize@fast +\@bmpsize@fasttrue + +\def\@bmpsize@init{% + \let\@bmpsize@org@plain@loop\loop + \let\loop\@bmpsize@plain@loop + \bmpsize@okfalse + \@bmpsize@bigendiantrue + \@bmpsize@absnumfalse + \let\bmpsize@pixelwidth\relax + \let\bmpsize@pixelheight\relax + \let\bmpsize@pixelx\relax + \let\bmpsize@pixely\relax + \let\bmpsize@unit\relax + \let\bmpsize@pixelxdenom\relax + \let\bmpsize@pixelydenom\relax +} + +\def\@bmpsize@stop#1\@nil{} + +\def\@bmpsize@loop#1{% + #1% + \@bmpsize@loop{#1}% +} +\def\@bmpsize@break#1\@bmpsize@loop#2{} + +\def\@bmpsize@size#1#2#3{% + \edef#3{\pdffilesize{#1}}% + \ifx#3\@empty + \expandafter\@bmpsize@stop + \fi + \ifnum#3<#2\relax + \expandafter\@bmpsize@stop + \fi +} + +\def\@bmpsize@read#1#2#3{% + \edef\@bmpsize@buf{\pdffiledump offset#3length#2{#1}}% + \edef\@bmpsize@temp{% + \noexpand\@bmpsize@check@byte{#2}\@bmpsize@buf{}{}\noexpand\\% + }% + \@bmpsize@temp +} +\def\@bmpsize@fillbuf#1{% + \ifx\@bmpsize@buf\@empty + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \edef\@bmpsize@buf{% + \pdffiledump offset\bmpsize@offset + length\bmpsize@fillbuflength{#1}% + }% + \ifx\@bmpsize@buf\@empty + \expandafter\@bmpsize@stop + \fi + \edef\bmpsize@offset{\the\numexpr\bmpsize@offset+\bmpsize@fillbuflength}% + }% +} +\def\bmpsize@fillbuflength{10} + +\def\@bmpsize@append#1#2#3{% + \edef#1{#2#3}% +} +\def\@bmpsize@pushback#1{% + \edef\@bmpsize@buf{#1\@bmpsize@buf}% +} + +\def\@bmpsize@iswhite#1{% + \ifnum\pdfstrcmp{#1}{09}=\z@ + \else + \ifnum\pdfstrcmp{#1}{0A}=\z@ + \else + \ifnum\pdfstrcmp{#1}{0D}=\z@ + \else + \ifnum\pdfstrcmp{#1}{20}=\z@ + \else + 1% + \fi + \fi + \fi + \fi + \space +} +\def\@bmpsize@isdigit#1{% + \ifnum\pdfstrcmp{#1}{30}<\z@ + 1% + \else + \ifnum\pdfstrcmp{#1}{39}>\z@ + 1% + \fi + \fi + \space +} + +\def\@bmpsize@check@byte#1#2#3{% + \ifnum#1<\@ne + \csname fi\endcsname + \@bmpsize@cleanup@end + \else + \csname fi\endcsname + \ifx!#2#3!% + \csname fi\endcsname + \@bmpsize@stop + \else + \csname fi\endcsname + \expandafter\@bmpsize@check@byte\expandafter{\the\numexpr#1-1}% +} +\def\@bmpsize@cleanup@end#1\\{} + +\def\@bmpsize@swap@maybe#1{% + \if@bmpsize@bigendian + \else + \edef#1{\expandafter\@bmpsize@@swap#1\@empty\@empty\@empty\@empty}% + \fi +} +\def\@bmpsize@@swap#1#2#3#4#5#6#7#8{% + #7#8#5#6#3#4#1#2% +} + +\def\@bmpsize@skip@one{% + \edef\@bmpsize@buf{\expandafter\@gobbletwo\@bmpsize@buf}% +} +\def\@bmpsize@skip@two{% + \edef\@bmpsize@buf{\expandafter\@gobblefour\@bmpsize@buf}% +} +\def\@bmpsize@skip@four{% + \edef\@bmpsize@buf{% + \expandafter\expandafter\expandafter\@gobblefour\expandafter + \@gobblefour\@bmpsize@buf + }% +} + +\def\@bmpsize@grab#1#2{% + \edef#1{\noexpand\@bmpsize@grab@byte#2=\@bmpsize@buf\noexpand\\}% + \edef#1{#1}% +} +\def\@bmpsize@grab@byte#1=#2#3{% + #2#3% + \ifnum#1>\@ne + \expandafter\@bmpsize@grab@byte\the\numexpr#1-1\expandafter=% + \else + \expandafter\@bmpsize@cleanup@end + \fi +} + +\def\@bmpsize@abs@maybe#1{% + \let\@bmpsize@temp\relax + \if@bmpsize@absnum + \ifnum"\expandafter\@car#1\@nil>7 % + \edef#1{\expandafter\@bmpsize@abs@byte#1\relax}% + \ifnum\pdfstrcmp{#1}{7FFFFFFF}=\z@ + \let\@bmpsize@temp\@bmpsize@stop + \else + \def\@bmpsize@temp{\edef#1{\the\numexpr#1+1}}% + \fi + \fi + \fi +} +\def\@bmpsize@abs@byte#1{% + \ifx#1\relax + \else + \ifcase"0#1 % + F\or E\or D\or C\or B\or A\or 9\or 8\or + 7\or 6\or 5\or 4\or 3\or 2\or 1\or 0% + \fi + \expandafter\@bmpsize@abs@byte + \fi +} + +\def\@bmpsize@num@one#1{% + \@bmpsize@grab#11% + \@bmpsize@abs@maybe#1% + \edef#1{\number"#1}% + \@bmpsize@temp + \@bmpsize@skip@one +} +\def\@bmpsize@num@two#1{% + \@bmpsize@grab#12% + \@bmpsize@swap@maybe#1% + \@bmpsize@abs@maybe#1% + \edef#1{\number"#1}% + \@bmpsize@temp + \@bmpsize@skip@two +} +\def\@bmpsize@num@four#1{% + \@bmpsize@grab#14% + \@bmpsize@swap@maybe#1% + \@bmpsize@abs@maybe#1% + \ifnum\pdfstrcmp{#1}{7FFFFFFF}>\z@ + \expandafter\@bmpsize@stop + \fi + \edef#1{\number"#1}% + \@bmpsize@temp + \@bmpsize@skip@four +} + +\def\@bmpsize@div#1#2#3{% #1 := #2/#3 + \FPdiv#1{#2}{#3}% + \@bmpsize@beautify#1% +} +\def\@bmpsize@beautify#1{% + \FPifint#1% + \edef#1{\expandafter\@bmpsize@trunc#1.\@nil}% + \else + \edef#1{\expandafter\@bmpsize@cleanup@frac#1.\@nil}% + \fi +} +\def\@bmpsize@trunc#1.#2\@nil{#1} +\def\@bmpsize@cleanup@frac#1.#2#3.#4\@nil{% + #1.#2% + \ifx\\#3\\% + \else + \@bmpsize@cleanup@fracdigits#3000000000\@nil + \fi +} +\def\@bmpsize@cleanup@fracdigits#1#2#3#4#5#6#7#8#9{% + \ifcase#9 % + \ifcase#8 % + \ifcase#7 % + \ifcase#6 % + \ifcase#5 % + \ifcase #4 % + \ifcase #3 % + \ifcase #2 % + \ifcase #1 % + \else + #1% + \fi + \else + #1#2% + \fi + \else + #1#2#3% + \fi + \else + #1#2#3#4% + \fi + \else + #1#2#3#4#5% + \fi + \else + #1#2#3#4#5#6% + \fi + \else + #1#2#3#4#5#6#7% + \fi + \else + #1#2#3#4#5#6#7#8% + \fi + \else + #1#2#3#4#5#6#7#8#9% + \fi + \@bmpsize@trunc.% +} + +\def\@bmpsize@end{% + \ifbmpsize@ok + \ifx\bmpsize@pixelwidth\relax + \bmpsize@okfalse + \fi + \ifx\bmpsize@pixelheight\relax + \bmpsize@okfalse + \fi + \fi + \ifbmpsize@ok + \ifnum\bmpsize@pixelwidth>\z@ + \else + \bmpsize@okfalse + \fi + \ifnum\bmpsize@pixelheight>\z@ + \else + \bmpsize@okfalse + \fi + \fi + \ifbmpsize@ok + \ifcase 0% + \ifx\bmpsize@pixelx\relax 1 \fi + \ifx\bmpsize@pixely\relax 1 \fi + \ifnum\bmpsize@pixelx>\z@\else 1 \fi + \ifnum\bmpsize@pixely>\z@\else 1 \fi + \ifx\bmpsize@pixelxdenom\relax + \ifx\bmpsize@pixelydenom\relax\else 1 \fi + \else + \ifnum\bmpsize@pixelxdenom>\z@\else 1 \fi + \fi + \ifx\bmpsize@pixelydenom\relax + \else + \ifnum\bmpsize@pixelydenom>\z@\else 1 \fi + \fi + \else + \let\bmpsize@pixelx\relax + \let\bmpsize@pixely\relax + \let\bmpsize@unit\relax + \let\bmpsize@pixelxdenom\relax + \let\bmpsize@pixelydenom\relax + \fi + \ifx\bmpsize@pixelxdenom\relax + \else + \@bmpsize@div\bmpsize@pixelx\bmpsize@pixelx\bmpsize@pixelxdenom + \@bmpsize@div\bmpsize@pixely\bmpsize@pixely\bmpsize@pixelydenom + \let\bmpsize@pixelxdenom\relax + \let\bmpsize@pixelydenom\relax + \fi + \ifcase 0\ifx\bmpsize@unit\relax 1\fi + \if@bmpsize@user@resolution 1\fi + \relax + \let\bmpsize@calc@unit\bmpsize@unit + \let\bmpsize@calc@pixelx\bmpsize@pixelx + \let\bmpsize@calc@pixely\bmpsize@pixely + \else + \let\bmpsize@calc@unit\bmpsize@unit@default + \let\bmpsize@calc@pixelx\bmpsize@pixelx@default + \let\bmpsize@calc@pixely\bmpsize@pixely@default + \ifx\bmpsize@calc@pixely\Gin@exclamation + \ifx\bmpsize@pixelx\relax + \let\bmpsize@calc@pixely\bmpsize@calc@pixelx + \else + \FPdiv\bmpsize@calc@pixely\bmpsize@calc@pixelx\bmpsize@pixelx + \FPmul\bmpsize@calc@pixely\bmpsize@calc@pixely\bmpsize@pixely + \fi + \else + \ifx\bmpsize@calc@pixelx\Gin@exclamation + \ifx\bmpsize@pixelx\relax + \let\bmpsize@calc@pixelx\bmpsize@calc@pixely + \else + \FPdiv\bmpsize@calc@pixelx\bmpsize@calc@pixely\bmpsize@pixely + \FPmul\bmpsize@calc@pixelx\bmpsize@calc@pixelx\bmpsize@pixelx + \fi + \fi + \fi + \fi + \FPdiv\bmpsize@width\bmpsize@pixelwidth\bmpsize@calc@pixelx + \FPdiv\bmpsize@height\bmpsize@pixelheight\bmpsize@calc@pixely + % calculation of width and height in bp for package graphics + % 1in = 72bp = 72.27pt, 72/72.27 = 8/8.03, 1pt = 65536sp + \if@bmpsize@fast + \edef\bmpsize@width{% + \strip@pt\dimexpr.99626\dimexpr + \bmpsize@width\dimexpr\bmpsize@calc@unit + }% + \edef\bmpsize@height{% + \strip@pt\dimexpr.99626\dimexpr + \bmpsize@height\dimexpr\bmpsize@calc@unit + }% + \else + \edef\@bmpsize@temp{\number\dimexpr\bmpsize@calc@unit}% + \ifnum\@bmpsize@temp>100000 % + \FPmul\@bmpsize@temp\@bmpsize@temp{0.00001}% + \def\@bmpsize@corr{100000}% + \else + \let\@bmpsize@corr\relax + \fi + \FPmul\bmpsize@width\bmpsize@width\@bmpsize@temp + \FPmul\bmpsize@height\bmpsize@height\@bmpsize@temp + \FPmul\bmpsize@width\bmpsize@width{8}% + \FPmul\bmpsize@height\bmpsize@height{8}% + \FPdiv\bmpsize@width\bmpsize@width{8.03}% + \FPdiv\bmpsize@height\bmpsize@height{8.03}% + \FPdiv\bmpsize@width\bmpsize@width{65536}% + \FPdiv\bmpsize@height\bmpsize@height{65536}% + \ifx\@bmpsize@corr\relax + \else + \FPmul\bmpsize@width\bmpsize@width\@bmpsize@corr + \FPmul\bmpsize@height\bmpsize@height\@bmpsize@corr + \fi + \FPround\bmpsize@width\bmpsize@width{5}% + \FPround\bmpsize@height\bmpsize@height{5}% + \@bmpsize@beautify\bmpsize@width + \@bmpsize@beautify\bmpsize@height + \fi + \fi + \let\loop\@bmpsize@org@plain@loop +} +\def\bmpsize@unit@default{1in} +\def\bmpsize@pixelx@default{72} +\let\bmpsize@pixely@default\Gin@exclamation + +\def\bmpsize@types{png,jpg,bmp,gif,tiff,pnm,pam,xpm,tga,pcx,msp,sgi} +\def\bmpsize@read@png#1{% + \@bmpsize@init + \@bmpsize@bigendiantrue + \@bmpsize@read{#1}{24}{0}% + \@bmpsize@grab\bmpsize@temp{8}% + \@bmpsize@skip@four + \@bmpsize@skip@four + \ifnum\pdfstrcmp{\bmpsize@temp}{89504E470D0A1A0A}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@num@four\bmpsize@length + \@bmpsize@grab\bmpsize@temp{4}% + \@bmpsize@skip@four + \ifnum\pdfstrcmp{\bmpsize@temp}{49484452}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@num@four\bmpsize@pixelwidth + \@bmpsize@num@four\bmpsize@pixelheight + \@bmpsize@ok + \edef\bmpsize@offset{\the\numexpr20+\bmpsize@length}% + \@bmpsize@loop{% + \@bmpsize@read{#1}{8}{\bmpsize@offset}% + \@bmpsize@num@four\bmpsize@length + \@bmpsize@grab\bmpsize@temp{4}% + \@bmpsize@skip@four + \ifnum\pdfstrcmp{\bmpsize@temp}{49444154}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@stop + }% + \ifnum\pdfstrcmp{\bmpsize@temp}{70485973}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@read{#1}{9}{\numexpr\bmpsize@offset+8\relax}% + \@bmpsize@num@four\bmpsize@pixelx + \@bmpsize@num@four\bmpsize@pixely + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\bmpsize@temp=1\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \def\bmpsize@unit{100cm}% + }% + \@bmpsize@stop + }% + \edef\bmpsize@offset{\the\numexpr\bmpsize@offset+12+\bmpsize@length}% + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@jpg#1{% + \@bmpsize@init + \@bmpsize@read{#1}{3}{0}% + \@bmpsize@grab\bmpsize@temp{3}% + \@bmpsize@skip@two + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{FFD8FF}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \def\bmpsize@offset{2}% + \def\bmpsize@exifdensity{0}% + \@bmpsize@loop{% + \@bmpsize@read{#1}{4}{\bmpsize@offset}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{FF}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@num@one\bmpsize@temp + \ifnum\bmpsize@temp=218\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@stop + }% + \ifnum\bmpsize@temp=224\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@num@two\bmpsize@length + \ifnum\bmpsize@exifdensity=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \unless\ifnum\bmpsize@length<16\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@read{#1}{12}{\numexpr\bmpsize@offset+4\relax}% + \@bmpsize@grab\bmpsize@temp{5}% + \@bmpsize@skip@four + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{4A46494600}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \ifnum\bmpsize@length<16\relax + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@two + \@bmpsize@num@one\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \def\bmpsize@unit{1in}% + }{% + \ifnum\bmpsize@temp=2\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \def\bmpsize@unit{1cm}% + }% + }% + \@bmpsize@num@two\bmpsize@pixelx + \@bmpsize@num@two\bmpsize@pixely + }% + }% + }% + }{% + \ifnum\bmpsize@temp=225\relax + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@num@two\bmpsize@length + \unless\ifnum\bmpsize@length<20\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@read{#1}{20}{\numexpr\bmpsize@offset+4\relax}% + \@bmpsize@grab\bmpsize@temp{6}% + \@bmpsize@skip@four + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{457869660000}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \edef\bmpsize@exifoffset{\the\numexpr\bmpsize@offset+10}% + \@bmpsize@grab\bmpsize@temp{2}% + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{4949}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@bigendianfalse + }{% + \ifnum\pdfstrcmp{\bmpsize@temp}{4D4D}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + }% + \@bmpsize@num@two\bmpsize@temp + \ifnum\bmpsize@temp=42\relax + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@num@four\bmpsize@temp + \ifnum\bmpsize@temp>0\relax + \else + \expandafter\@bmpsize@stop + \fi + \edef\bmpsize@off{\the\numexpr\bmpsize@temp+\bmpsize@exifoffset}% + \@bmpsize@read{#1}{2}{\bmpsize@off}% + \@bmpsize@num@two\bmpsize@entries + \edef\bmpsize@off{\the\numexpr\bmpsize@off+2}% + \@bmpsize@loop{% + \ifnum\bmpsize@entries=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + \edef\bmpsize@entries{\the\numexpr\bmpsize@entries-1}% + \@bmpsize@read{#1}{12}{\bmpsize@off}% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+12}% + \@bmpsize@num@two\bmpsize@tag + \ifnum\bmpsize@tag=296\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@temp + \ifcase\bmpsize@temp\relax + \or + \let\bmpsize@unit\relax + \or + \def\bmpsize@unit{1in}% + \or + \def\bmpsize@unit{1cm}% + \else + \let\bmpsize@unit\relax + \fi + \ifcase\bmpsize@temp\relax + \or + \or + \def\bmpsize@exifdensity{1}% + \or + \def\bmpsize@exifdensity{1}% + \else + \let\bmpsize@exifdensity\bmpsize@exifdensity + \fi + }% + \ifnum\bmpsize@tag=282\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@temp + \@bmpsize@read{#1}{8}{\numexpr\bmpsize@temp+\bmpsize@exifoffset\relax}% + \@bmpsize@num@four\bmpsize@pixelx + \@bmpsize@num@four\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \edef\bmpsize@pixelxdenom{\the\numexpr\bmpsize@temp}% + }% + }% + \ifnum\bmpsize@tag=283\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@temp + \@bmpsize@read{#1}{8}{\numexpr\bmpsize@temp+\bmpsize@exifoffset\relax}% + \@bmpsize@num@four\bmpsize@pixely + \@bmpsize@num@four\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \edef\bmpsize@pixelydenom{\the\numexpr\bmpsize@temp}% + }% + }% + }% + \@bmpsize@bigendiantrue + }% + }% + }{% + \edef\bmpsize@temp{\the\numexpr\bmpsize@temp-192}% + \ifcase\bmpsize@temp\relax + \or + \or + \or + \or + \def\bmpsize@temp{-1}% + \or + \or + \or + \or + \def\bmpsize@temp{-1}% + \or + \or + \or + \or + \def\bmpsize@temp{-1}% + \or + \or + \or + \else + \def\bmpsize@temp{-1}% + \fi + \ifnum\bmpsize@temp=-1\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@read{#1}{4}{\numexpr\bmpsize@offset+5\relax}% + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@num@two\bmpsize@pixelwidth + \ifnum\bmpsize@pixelheight=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \let\bmpsize@pixelheight\relax + \@bmpsize@stop + }% + \@bmpsize@ok + \@bmpsize@stop + }% + \@bmpsize@num@two\bmpsize@length + }% + }% + \edef\bmpsize@offset{\the\numexpr\bmpsize@offset+\bmpsize@length+2}% + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@bmp#1{% + \@bmpsize@init + \@bmpsize@bigendianfalse + \@bmpsize@read{#1}{26}{0}% + \@bmpsize@grab\bmpsize@temp{2}% + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{424D}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@num@two\bmpsize@temp + \ifnum\bmpsize@temp=12\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@ok + \@bmpsize@stop + }% + \ifnum\bmpsize@temp=64\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@ok + \@bmpsize@stop + }% + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@pixelwidth + \@bmpsize@absnumtrue + \@bmpsize@num@four\bmpsize@pixelheight + \@bmpsize@absnumfalse + \@bmpsize@ok + \@bmpsize@read{#1}{8}{38}% + \@bmpsize@num@four\bmpsize@pixelx + \@bmpsize@num@four\bmpsize@pixely + \def\bmpsize@unit{100cm}% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@gif#1{% + \@bmpsize@init + \@bmpsize@bigendianfalse + \@bmpsize@read{#1}{13}{0}% + \@bmpsize@grab\bmpsize@temp{3}% + \@bmpsize@skip@two + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{474946}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@two + \@bmpsize@skip@one + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@skip@two + \@bmpsize@num@one\bmpsize@temp + \ifnum\bmpsize@temp=0\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \edef\bmpsize@pixelx{\the\numexpr\bmpsize@temp+15}% + \def\bmpsize@pixely{64}% + }% + \@bmpsize@ok + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@tiff#1{% + \@bmpsize@init + \def\bmpsize@unit{1in}% + \@bmpsize@read{#1}{8}{0}% + \@bmpsize@grab\bmpsize@temp{2}% + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{4949}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@bigendianfalse + }{% + \ifnum\pdfstrcmp{\bmpsize@temp}{4D4D}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@bigendiantrue + }% + \@bmpsize@num@two\bmpsize@temp + \ifnum\bmpsize@temp=42\relax + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@num@four\bmpsize@offset + \@bmpsize@read{#1}{2}{\bmpsize@offset}% + \edef\bmpsize@offset{\the\numexpr\bmpsize@offset+2}% + \@bmpsize@num@two\bmpsize@entries + \@bmpsize@ok + \@bmpsize@loop{% + \ifnum\bmpsize@entries=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@stop + }% + \edef\bmpsize@entries{\the\numexpr\bmpsize@entries-1}% + \@bmpsize@read{#1}{12}{\bmpsize@offset}% + \edef\bmpsize@offset{\the\numexpr\bmpsize@offset+12}% + \@bmpsize@num@two\bmpsize@tag + \ifnum\bmpsize@temp=296\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@temp + \ifcase\bmpsize@temp\relax + \or + \let\bmpsize@unit\relax + \or + \def\bmpsize@unit{1in}% + \or + \def\bmpsize@unit{1cm}% + \else + \let\bmpsize@unit\relax + \fi + }% + \ifnum\bmpsize@tag=256\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@pixelwidth + }% + \ifnum\bmpsize@tag=257\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@pixelheight + }% + \ifnum\bmpsize@tag=282\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@temp + \@bmpsize@read{#1}{8}{\bmpsize@temp}% + \@bmpsize@num@four\bmpsize@pixelx + \@bmpsize@num@four\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \edef\bmpsize@pixelxdenom{\the\numexpr\bmpsize@temp}% + }% + }% + \ifnum\bmpsize@tag=283\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@four\bmpsize@temp + \@bmpsize@read{#1}{8}{\bmpsize@temp}% + \@bmpsize@num@four\bmpsize@pixely + \@bmpsize@num@four\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \edef\bmpsize@pixelydenom{\the\numexpr\bmpsize@temp}% + }% + }% + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@pnm#1{% + \@bmpsize@init + \def\bmpsize@offset{0}% + \@bmpsize@read{#1}{3}{\bmpsize@offset}% + \def\bmpsize@offset{3}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{50}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{31}<\z@ + \expandafter\@bmpsize@stop + \fi + \ifnum\pdfstrcmp{\bmpsize@temp}{36}>\z@ + \expandafter\@bmpsize@stop + \fi + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@stop + }% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \ifnum\pdfstrcmp{\bmpsize@temp}{23}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@break + }{% + \ifnum\pdfstrcmp{\bmpsize@temp}{0D}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + }% + }{% + \@bmpsize@pushback\bmpsize@temp + \@bmpsize@break + }% + }% + }% + \def\bmpsize@tempnum{}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \edef\bmpsize@pixelwidth{\pdfunescapehex{\bmpsize@tempnum}}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@pushback\bmpsize@temp + \@bmpsize@break + }% + }% + \def\bmpsize@tempnum{}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \edef\bmpsize@pixelheight{\pdfunescapehex{\bmpsize@tempnum}}% + \@bmpsize@ok + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@pam#1{% + \@bmpsize@init + \@bmpsize@read{#1}{3}{0}% + \def\bmpsize@offset{3}% + \let\bmpsize@off\bmpsize@offset + \@bmpsize@grab\bmpsize@temp{3}% + \@bmpsize@skip@two + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{50370A}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + }{% + \ifnum\pdfstrcmp{\bmpsize@temp}{23}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + }{% + \@bmpsize@read{#1}{6}{\bmpsize@off}% + \edef\bmpsize@offset{\the\numexpr\bmpsize@off+6}% + \@bmpsize@grab\bmpsize@head{5}% + \@bmpsize@skip@four + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@head}{5749445448}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+5}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + }{% + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \let\bmpsize@tempnum\bmpsize@temp + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \@bmpsize@pushback\bmpsize@temp + \@bmpsize@break + }% + }% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + \edef\bmpsize@pixelwidth{\pdfunescapehex{\bmpsize@tempnum}}% + }{% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \@bmpsize@append\bmpsize@head\bmpsize@head\bmpsize@temp + \ifnum\pdfstrcmp{\bmpsize@head}{454E44484452}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@ok + \@bmpsize@stop + }{% + \ifnum\pdfstrcmp{\bmpsize@head}{484549474854}=\z@ + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+6}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + }{% + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \let\bmpsize@tempnum\bmpsize@temp + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \@bmpsize@pushback\bmpsize@temp + \@bmpsize@break + }% + }% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + \edef\bmpsize@pixelheight{\pdfunescapehex{\bmpsize@tempnum}}% + }{% + \@bmpsize@pushback\bmpsize@head + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \edef\bmpsize@off{\the\numexpr\bmpsize@off+1}% + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + }% + }% + }% + }% + }% + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@xpm#1{% + \@bmpsize@init + \@bmpsize@read{#1}{9}{0}% + \@bmpsize@grab\bmpsize@temp{9}% + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@one + \def\bmpsize@offset{9}% + \ifnum\pdfstrcmp{\bmpsize@temp}{2F2A2058504D202A2F}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{22}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + \ifnum\pdfstrcmp{\bmpsize@temp}{2F}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{2A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{2A}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{2F}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + \ifnum\pdfstrcmp{\bmpsize@temp}{2A}=\z@ + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@break + }% + }% + \ifnum\pdfstrcmp{\bmpsize@temp}{2F}=\z@ + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@break + }% + }% + }% + }% + }% + }% + \def\bmpsize@tempnum{}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \edef\bmpsize@pixelwidth{\pdfunescapehex{\bmpsize@tempnum}}% + \def\bmpsize@tempnum{}% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \@bmpsize@loop{% + \@bmpsize@fillbuf{#1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifcase 0\@bmpsize@isdigit\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@append\bmpsize@tempnum\bmpsize@tempnum\bmpsize@temp + }{% + \ifcase 0\@bmpsize@iswhite\bmpsize@temp + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \@bmpsize@break + }{% + \@bmpsize@stop + }% + }% + }% + \edef\bmpsize@pixelheight{\pdfunescapehex{\bmpsize@tempnum}}% + \@bmpsize@ok + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@tga#1{% + \@bmpsize@init + \@bmpsize@bigendianfalse + \@bmpsize@read{#1}{16}{1}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{00}=\z@ + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \ifnum\pdfstrcmp{\bmpsize@temp}{01}=\z@ + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@stop + }% + }% + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@ok + \@bmpsize@size{#1}{26}\bmpsize@temp \@bmpsize@read{#1}{26}{\numexpr\bmpsize@temp-26\relax}% + \@bmpsize@num@four\bmpsize@offset + \@bmpsize@skip@four + \@bmpsize@grab\bmpsize@temp{18}% + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@four + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{54525545564953494F4E2D5846494C452E00}=\z@ + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \@bmpsize@stop + }% + \ifnum\bmpsize@offset=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@stop + }% + \@bmpsize@read{#1}{4}{\numexpr\bmpsize@offset+474\relax}% + \@bmpsize@num@two\bmpsize@pixelx + \@bmpsize@num@two\bmpsize@pixely + \ifnum\bmpsize@pixely=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \let\bmpsize@pixelx\relax + \let\bmpsize@pixely\relax + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@pcx#1{% + \@bmpsize@init + \@bmpsize@bigendianfalse + \@bmpsize@read{#1}{16}{0}% + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\pdfstrcmp{\bmpsize@temp}{0A}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@one + \@bmpsize@num@one\bmpsize@temp + \ifnum\bmpsize@temp=1\relax + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@one + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@num@two\bmpsize@temp + \edef\bmpsize@pixelwidth{\the\numexpr\bmpsize@temp-\bmpsize@pixelwidth+1}% + \@bmpsize@num@two\bmpsize@temp + \edef\bmpsize@pixelheight{\the\numexpr\bmpsize@temp-\bmpsize@pixelheight+1}% + \ifnum\bmpsize@pixelwidth>0\relax + \else + \expandafter\@bmpsize@stop + \fi + \ifnum\bmpsize@pixelheight>0\relax + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@ok + \@bmpsize@num@two\bmpsize@pixelx + \@bmpsize@num@two\bmpsize@pixely + \def\bmpsize@unit{1in}% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@msp#1{% + \@bmpsize@init + \@bmpsize@bigendianfalse + \@bmpsize@read{#1}{16}{0}% + \@bmpsize@grab\bmpsize@temp{4}% + \@bmpsize@skip@four + \ifnum\pdfstrcmp{\bmpsize@temp}{44616E4D}=\z@ + \expandafter\@gobble + \else + \expandafter\@firstofone + \fi + {% + \ifnum\pdfstrcmp{\bmpsize@temp}{4C696E53}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + }% + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@ok + \@bmpsize@num@two\bmpsize@pixelx + \@bmpsize@num@two\bmpsize@pixely + \def\bmpsize@unit{1in}% + \ifnum\bmpsize@pixelx=0\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \@bmpsize@num@two\bmpsize@pixelx + \@bmpsize@num@two\bmpsize@pixely + }% + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\def\bmpsize@read@sgi#1{% + \@bmpsize@init + \@bmpsize@bigendiantrue + \@bmpsize@read{#1}{10}{0}% + \@bmpsize@grab\bmpsize@temp{2}% + \@bmpsize@skip@two + \ifnum\pdfstrcmp{\bmpsize@temp}{01DA}=\z@ + \else + \expandafter\@bmpsize@stop + \fi + \@bmpsize@grab\bmpsize@temp{1}% + \@bmpsize@skip@one + \ifnum\bmpsize@temp<0\relax + \expandafter\@bmpsize@stop + \fi + \ifnum\bmpsize@temp>1\relax + \expandafter\@bmpsize@stop + \fi + \@bmpsize@skip@two + \@bmpsize@num@two\bmpsize@pixelwidth + \@bmpsize@num@two\bmpsize@pixelheight + \@bmpsize@ok + \@bmpsize@stop + \@nil + \@bmpsize@end +}% +\endinput +%% +%% End of file `bmpsize-base.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def new file mode 100644 index 00000000000..b661894c08b --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfm.def @@ -0,0 +1,146 @@ +%% +%% This is file `bmpsize-dvipdfm.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `dvipdfm') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\ProvidesFile{bmpsize-dvipdfm.def}% + [2006/08/24 v1.0 Graphics bitmap driver for dvipdfm (HO)] +\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{% + \catcode44 \the\catcode44 % , + \catcode46 \the\catcode46 % . + \catcode58 \the\catcode58 % : + \catcode60 \the\catcode60 % < + \catcode61 \the\catcode61 % = + \catcode62 \the\catcode62 % > + \catcode64 \the\catcode64 % @ +} +\catcode64 11 % +\@makeother\, +\@makeother\. +\@makeother\: +\@makeother\< +\@makeother\= +\@makeother\> +\@ifundefined{@bmpsize@count}{% + \csname newcount\endcsname\@bmpsize@count + \@bmpsize@count=\z@ +}{} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdfescapestring\endcsname\relax + \def\@bmpsize@pdfescapestring#1{#1}% +\else + \let\@bmpsize@pdfescapestring\pdfescapestring +\fi +\@ifundefined{bmpsize@dvipdfm@factor}{% + \def\bmpsize@dvipdfm@factor{.99626}% +}{} +\def\Ginclude@bmp#1{% + \message{<#1>}% + \ifGin@clip + \global\advance\@bmpsize@count\@ne + \edef\@bmpsize@clip@name{@CLIP@\the\@bmpsize@count}% + \special{% + pdf:bxobj \@bmpsize@clip@name\space + width \the\Gin@req@width\space + height \the\Gin@req@height + }% + \fi + \hbox to \z@{% + \@ifundefined{Gin@ollx}{% + \dimen@\z@ + }{% + \ifx\Gin@scalex\Gin@exclamation + \let\Gin@scalex\Gin@scaley + \fi + \ifx\Gin@scaley\Gin@exclamation + \let\Gin@scaley\Gin@scalex + \fi + \@ifundefined{bmpsize@width}{% + \let\bmpsize@width\Gin@ourx + \let\bmpsize@height\Gin@oury + }{}% + \dimen@=\Gin@llx bp\relax + \dimen@=\Gin@scalex\dimen@ + \kern-\dimen@ + \advance\Gin@req@width\dimen@ + \dimen@=\bmpsize@width bp\relax + \advance\dimen@ by -\Gin@urx bp\relax + \dimen@=\Gin@scalex\dimen@ + \advance\Gin@req@width\dimen@ + \dimen@=\bmpsize@height bp\relax + \advance\dimen@ by -\Gin@ury bp\relax + \dimen@=\Gin@scaley\dimen@ + \advance\Gin@req@height\dimen@ + \dimen@=\Gin@lly bp\relax + \dimen@=\Gin@scaley\dimen@ + \advance\Gin@req@height\dimen@ + }% + \ifdim\dimen@=\z@ + \else + \vbox to\z@\bgroup + \kern\dimen@ + \fi + \edef\@bmpsize@temp{@IMG@\@bmpsize@pdfescapestring{#1}}% + \@ifundefined{\@bmpsize@temp}{% + \global\advance\@bmpsize@count\@ne + \expandafter\xdef\csname\@bmpsize@temp\endcsname{% + \the\@bmpsize@count + }% + \special{% + pdf:image @IMG\csname\@bmpsize@temp\endcsname\space + width \the\Gin@req@width\space + height \the\Gin@req@height\space + depth 0pt (\@bmpsize@pdfescapestring{#1})% + }% + }{% + \special{% + pdf:bt % + xscale \strip@pt\dimexpr + \bmpsize@dvipdfm@factor\Gin@req@width\relax\space + yscale \strip@pt\dimexpr + \bmpsize@dvipdfm@factor\Gin@req@height\relax + }% + \special{pdf:uxobj @IMG\csname\@bmpsize@temp\endcsname}% + \special{pdf:et}% + }% + \ifdim\dimen@=\z@ + \else + \vss + \egroup + \fi + \hss + }% + \ifGin@clip + \special{pdf:exobj}% + \special{pdf:uxobj \@bmpsize@clip@name}% + \fi +} +\@bmpsize@driver@catcodes +\endinput +%% +%% End of file `bmpsize-dvipdfm.def'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def new file mode 100644 index 00000000000..17253a928ba --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvipdfmx.def @@ -0,0 +1,46 @@ +%% +%% This is file `bmpsize-dvipdfmx.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `dvipdfmx') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\ProvidesFile{bmpsize-dvipdfmx.def}% + [2006/08/24 v1.0 Graphics bitmap driver for dvipdfmx (HO)] +\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{% + \catcode46 \the\catcode46 % . + \catcode64 \the\catcode64 % @ +} +\catcode64 11 % +\@makeother\. +\@ifundefined{bmpsize@dvipdfm@factor}{% + \def\bmpsize@dvipdfm@factor{.01384}% +}{} +\@bmpsize@driver@catcodes +\input{bmpsize-dvipdfm.def} +\endinput +%% +%% End of file `bmpsize-dvipdfmx.def'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def new file mode 100644 index 00000000000..6aba10a6a63 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-dvips.def @@ -0,0 +1,122 @@ +%% +%% This is file `bmpsize-dvips.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `dvips') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\ProvidesFile{bmpsize-dvips.def}% + [2006/08/24 v1.0 Graphics bitmap driver for dvips (HO)] +\expandafter\edef\csname @bmpsize@driver@catcodes\endcsname{% + \catcode44 \the\catcode44 % , + \catcode58 \the\catcode58 % : + \catcode60 \the\catcode60 % < + \catcode61 \the\catcode61 % = + \catcode62 \the\catcode62 % > + \catcode64 \the\catcode64 % @ +} +\catcode64 11 % +\@makeother\, +\@makeother\: +\@makeother\< +\@makeother\= +\@makeother\> +\def\Ginclude@bmp#1{% + \message{<#1>}% + \raise\Gin@req@height + \hbox to\Gin@req@width{% + \ifGin@clip + \vbox to\z@{% + \special{ps:gsave currentpoint}% + \kern\Gin@req@height + \hbox to\z@{% + \kern\Gin@req@width + \special{ps:% + currentpoint + newpath + 3 index 3 index moveto + 1 index 3 index lineto + 2 copy lineto + exch pop exch pop + lineto + closepath + clip + }% + \hss + }% + \vss + }% + \fi + \@ifundefined{Gin@ollx}{% + \dimen@\z@ + }{% + \ifx\Gin@scalex\Gin@exclamation + \let\Gin@scalex\Gin@scaley + \fi + \ifx\Gin@scaley\Gin@exclamation + \let\Gin@scaley\Gin@scalex + \fi + \@ifundefined{bmpsize@width}{% + \let\bmpsize@width\Gin@ourx + \let\bmpsize@height\Gin@oury + }{}% + \dimen@=\Gin@llx bp\relax + \dimen@=\Gin@scalex\dimen@ + \kern-\dimen@ + \advance\Gin@req@width\dimen@ + \dimen@=\bmpsize@width bp\relax + \advance\dimen@ by -\Gin@urx bp\relax + \dimen@=\Gin@scalex\dimen@ + \advance\Gin@req@width\dimen@ + \dimen@=\Gin@lly bp\relax + \dimen@=\Gin@scaley\dimen@ + \advance\Gin@req@height\dimen@ + \dimen@=\bmpsize@height bp\relax + \advance\dimen@ by -\Gin@ury bp\relax + \dimen@=\Gin@scaley\dimen@ + \advance\Gin@req@height\dimen@ + }% + \ifdim\dimen@=\z@ + \else + \vbox to\z@\bgroup + \kern-\dimen@ + \fi + \special{em:graph #1,\the\Gin@req@width,\the\Gin@req@height}% + \ifdim\dimen@=\z@ + \else + \vss + \egroup + \fi + \ifGin@clip + \special{ps::grestore}% + \fi + \hss + }% +} +\@bmpsize@driver@catcodes +\endinput +%% +%% End of file `bmpsize-dvips.def'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex new file mode 100644 index 00000000000..fa5616956a7 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize-test.tex @@ -0,0 +1,141 @@ +%% +%% This is file `bmpsize-test.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `test') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\expandafter\ifx\csname NeedsTeXFormat\endcsname\relax +\input miniltx +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdfoutput\endcsname\relax +\else + \pdfoutput=0 % +\fi +\RequirePackage{bmpsize} + +\endlinechar=-1 +\catcode`\@=11 +\def\msg#{\immediate\write16} + +\def\init{% + \msg{}% + \msg{File name menu}% + \msg{==============}% + \msg{* Option menu: use `opt' as file name}% + \msg{* Quit program: }% + \msg{}% + \message{Image file name = }% + \read-1 to \imagename + \ifx\imagename\@empty + \expandafter\@firstoftwo + \else + \expandafter\@secondoftwo + \fi + {% + \csname @@end\endcsname + \end + }{% + \ifnum\pdfstrcmp{\imagename}{opt}=\z@ + \expandafter\optionmenu + \else + \startimg + \expandafter\init + \fi + }% +} +\def\optionmenu{% + \msg{}% + \msg{Option menu}% + \msg{===========}% + \msg{Current setting:}% + \msg{* bmpsizefast = \if@bmpsize@fast true\else false\fi}% + \msg{* \if@bmpsize@user@resolution\else default\fi resolution = % + \bmpsize@pixelx@default + \space + \bmpsize@pixely@default + }% + \msg{* \if@bmpsize@user@resolution default\fi resolution: not set}% + \msg{* resolutionunit = \bmpsize@unit@default}% + \msg{* Quit option menu: }% + \msg{}% + \message{Options = }% + \read-1 to \options + \ifx\options\empty + \expandafter\init + \else + \edef\@bmpsize@temp{% + \noexpand\setkeys{Gin}{\options}% + }% + \@bmpsize@temp + \expandafter\optionmenu + \fi +} + +\def\startimg{% + \let\@found\@empty + \msg{}% + \msg{* File [\imagename]}% + \@for\@type:=\bmpsize@types\do{% + \ifx\@found\@empty + \csname bmpsize@read@\@type\endcsname\imagename + \ifbmpsize@ok + \let\@found\@type + \msg{\space\space Type: \@type}% + \msg{\space\space Pixel width: \bmpsize@pixelwidth\space px}% + \msg{\space\space Pixel height: \bmpsize@pixelheight\space px}% + \ifx\bmpsize@pixelx\relax + \else + \ifx\bmpsize@unit\relax + \let\@unit@spec\@empty + \def\@ratio@name{Ratio }% + \else + \def\@unit@spec{\space dots per \bmpsize@unit}% + \def\@ratio@name{Density }% + \fi + \msg{\space\space \@ratio@name x: \bmpsize@pixelx\@unit@spec}% + \msg{\space\space \@ratio@name y: \bmpsize@pixely\@unit@spec}% + \fi + \msg{\space\space Width: \bmpsize@width\space bp}% + \msg{\space\space Height: \bmpsize@height\space bp}% + \fi + \fi + }% + \ifx\@found\@empty + \edef\@file@date{\pdffilemoddate{\imagename}}% + \ifx\@file@date\@empty + \msg{\space\space --> File not found <--}% + \else + \msg{\space\space --> Unknown image type <--}% + \fi + \fi +} + +\ifx\noinit!\else\expandafter\init\fi +\endinput +%% +%% End of file `bmpsize-test.tex'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty b/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty new file mode 100644 index 00000000000..812028bf206 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/bmpsize.sty @@ -0,0 +1,218 @@ +%% +%% This is file `bmpsize.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% bmpsize.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 bmpsize.dtx +%% and the derived files +%% bmpsize.sty, bmpsize.pdf, bmpsize.ins, bmpsize.drv, +%% bmpsize-base.sty, bmpsize-test.tex, bmpsize-dvips.def, +%% bmpsize-dvipdfm.def, bmpsize-dvipdfmx.def. +%% +\ProvidesPackage{bmpsize}% + [2006/08/24 v1.0 Extract size and resolution data from bitmap files (HO)] +\RequirePackage{ifpdf} +\ifpdf + \PackageInfo{bmpsize}{Superseded by pdfTeX in PDF mode}% + \expandafter\endinput +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdffiledump\endcsname\relax + \PackageError{bmpsize}{% + You need pdfTeX 1.30.0 or newer% + }{Package loading is aborted.}% + \expandafter\endinput +\fi + +\RequirePackage{graphics} +\RequirePackage{keyval} +\RequirePackage{bmpsize-base} + +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname PackageWarning\endcsname\relax + \def\@bmpsize@warning#1#2{% + \begingroup + \newlinechar=10 % + \def\MessageBreak{% + ^^J% + (bmpsize) % + \space\space\space\space + \space\space\space\space + \space\space\space\space + \space\space\space + }% + \immediate\write16{% + Package bmpsize Warning: #2 % + on input line \the\inputlineno.% + }% + \endgroup + }% +\else + \def\@bmpsize@warning{\PackageWarning{bmpsize}}% +\fi + +\InputIfFileExists{bmpsize-\Gin@driver}{}{} + +\define@key{Gin}{bmpsizefast}[true]{% + \expandafter\ifx\csname if#1\expandafter\endcsname\csname iftrue\endcsname + \@bmpsize@fasttrue + \else + \@bmpsize@fastfalse + \fi +} +\define@key{Gin}{resolutionunit}{% + \def\bmpsize@unit@default{#1}% +} +\begingroup + \def\x#1{\endgroup + \define@key{Gin}{resolution}{% + \@bmpsize@read@resolution\@bmpsize@user@resolutiontrue##1#1#1\@nil + }% + \define@key{Gin}{defaultresolution}{% + \@bmpsize@read@resolution\@bmpsize@user@resolutionfalse##1#1#1\@nil + }% + }% +\x{ } +\def\@bmpsize@read@resolution#1#2 #3 #4\@nil{% + \ifcase 0\ifx\\#2\\1\fi + \ifnum\pdfstrcmp{#2}{\Gin@exclamation}=\z@ + \ifx\\#3\\1\fi + \ifnum\pdfstrcmp{#3}{\Gin@exclamation}=\z@ + 1% + \fi + \fi + \ifcase\pdfstrcmp{#2}{\Gin@exclamation}\relax + \let\bmpsize@pixelx@default\Gin@exclamation + \else + \edef\bmpsize@pixelx@default{#2}% + \fi + \ifcase\pdfstrcmp{#3}{\Gin@exclamation}\relax + \let\bmpsize@pixely@default\Gin@exclamation + \else + \ifx\\#3\\% + \let\bmpsize@pixely@default\bmpsize@pixelx@default + \else + \edef\bmpsize@pixely@default{#3}% + \fi + \fi + #1% + \else + \PackageError{bmpsize}{% + Wrong syntax for key (default)resolution% + }{% + See package documentation for correct syntax.% + }% + \fi +} +\newcommand*{\bmpsizesetup}{\setkeys{Gin}} + +\let\@bmpsize@org@setfile\Gin@setfile +\def\Gin@setfile#1#2#3{% + \ifcase\pdfstrcmp{#1}{bmp}\relax + \expandafter\@firstofone + \else + \expandafter\@gobble + \fi + {% + \bmpsize@okfalse + \edef\bmpsize@ext{\ifx\Gin@ext\relax\Gin@eext\else\Gin@ext\fi}% + \edef\bmpsize@file{\Gin@base\bmpsize@ext}% + \edef\@bmpsize@temp{\bmpsize@ext}% + \@ifundefined{bmpsize@read@\@bmpsize@temp}{% + \@ifundefined{bmpsize@map@\@bmpsize@temp}{}{% + \expandafter\let\expandafter\@bmpsize@temp + \csname bmpsize@map@\@bmpsize@temp\endcsname + }% + }{}% + \@ifundefined{bmpsize@read@\@bmpsize@temp}{% + }{% + \csname bmpsize@read@\@bmpsize@temp\endcsname\bmpsize@file + }% + \ifbmpsize@ok + \else + \@for\@bmpsize@temp:=\bmpsize@types\do{% + \ifbmpsize@ok + \else + \csname bmpsize@read@\@bmpsize@temp\endcsname\bmpsize@file + \fi + }% + \fi + \ifbmpsize@ok + \ifGin@bbox + \@ifundefined{Gin@vllx}{% + \@bmpsize@warning{Explicit bounding box is ignored}% + }{% + \ifx\Gin@viewport@code\relax + \def\Gin@ollx{0}% + \let\Gin@olly\Gin@ollx + \let\Gin@ourx\bmpsize@width + \let\Gin@oury\bmpsize@height + \let\Gin@vllx\Gin@llx + \let\Gin@vlly\Gin@lly + \let\Gin@vurx\Gin@urx + \let\Gin@vury\Gin@ury + \let\Gin@viewport@code\Gin@viewport + \@bmpsize@warning{% + Explicit bounding box replaced by\MessageBreak + viewport setting + }% + \else + \@bmpsize@warning{Explicit bounding box is ignored}% + \fi + }% + \fi + \def\Gin@llx{0}% + \def\Gin@lly{0}% + \let\Gin@urx\bmpsize@width + \let\Gin@ury\bmpsize@height + \Gin@bboxtrue + \else + \PackageInfo{bmpsize}{Unknown image type of \bmpsize@file}% + \fi + }% + \@bmpsize@org@setfile{#1}{#2}{#3}% +} +\newcommand*{\bmpsize@ext@type}[1]{% + \@namedef{bmpsize@map@#1}% +} +\bmpsize@ext@type{.jpg}{jpg} +\bmpsize@ext@type{.jpe}{jpg} +\bmpsize@ext@type{.jfif}{jpg} +\bmpsize@ext@type{.jpeg}{jpg} +\bmpsize@ext@type{.tif}{tiff} +\bmpsize@ext@type{.tiff}{tiff} +\bmpsize@ext@type{.pcx}{pcx} +\bmpsize@ext@type{.msp}{msp} +\bmpsize@ext@type{.bmp}{bmp} +\bmpsize@ext@type{.png}{png} +\bmpsize@ext@type{.pnm}{pnm} +\bmpsize@ext@type{.pbm}{pnm} +\bmpsize@ext@type{.pgm}{pnm} +\bmpsize@ext@type{.ppm}{pnm} +\bmpsize@ext@type{.pam}{pam} +\bmpsize@ext@type{.xpm}{xpm} +\bmpsize@ext@type{.gif}{gif} +\bmpsize@ext@type{.tga}{tga} +\bmpsize@ext@type{.sgi}{sgi} +\endinput +%% +%% End of file `bmpsize.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/chemarr.sty b/Master/texmf-dist/tex/latex/oberdiek/chemarr.sty index defcfb3b925..c6afaada665 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/chemarr.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/chemarr.sty @@ -1,48 +1,36 @@ -% File: chemarr.sty -% Version: 2001/06/22 v1.1 -% Author: Heiko Oberdiek -% Email: -% -% Copyright: Copyright (C) 2001 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 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.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% Function: Very often chemists need a longer version -% of reaction arrows (\rightleftharpoons) with -% the possibility to put text above and below. -% Analogous to amsmath's \xrightarrow and -% \xleftarrow this package provides the macro -% \xrightleftharpoons. -% -% Requirement: amsmath -% Use: LaTeX: \usepackage{chemarr} -% \xrightleftharpoons[below]{above} -% -% History: 2001/06/21 v1.0: -% * first public version -% 2001/06/22 v1.1: -% * documentation fixes -% +%% +%% This is file `chemarr.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% chemarr.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2001, 2006 by Heiko Oberdiek +%% +%% 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 chemarr.dtx +%% and the derived files +%% chemarr.sty, chemarr.pdf, chemarr.ins, chemarr.drv, +%% chemarr-example.tex. +%% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{chemarr}% - [2001/06/22 v1.1 Chemical reaction arrows (HO)] -% + [2006/02/20 v1.2 Chemical reaction arrows (HO)] \RequirePackage{amsmath} -% The package amsmath is needed for the following commands: -% \ext@arrow, \@ifnotempty, \arrowfill@ -% \relbar, \std@minus -% \@ifempty, \@xifempty, \@xp -% -% In fontmath.ltx \rightleftharpoons is defined with -% a vertical space of 2pt. -% \newcommand{\xrightleftharpoons}[2][]{% \ensuremath{% \mathrel{% @@ -75,3 +63,5 @@ \arrowfill@\relbar\relbar\rightharpoonup } \endinput +%% +%% End of file `chemarr.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/classlist.sty b/Master/texmf-dist/tex/latex/oberdiek/classlist.sty index a1707a6a02f..ecef0080026 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/classlist.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/classlist.sty @@ -1,80 +1,39 @@ -% File: classlist.sty -% Version: 2005/06/19 v1.1 -% Author: Heiko Oberdiek -% Email: -% -% Copyright: Copyright (C) 2005 Heiko Oberdiek. -% -% 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 2003/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% This Current Maintainer of this work is Heiko Oberdiek. -% -% Function: This package records the loaded classes and stores -% them in a list. -% -% Background: This packages is an answer of a newsgroup question: -% Newsgroup: comp.text.tex -% Subject: Finding the Document Class -% From: Herber Schulz <> -% Date: 18 Jun 2005 13:16:49 -0500 -% Message-ID: -% -% -% Use: Load this package before \documentclass: -% \RequirePackage{classlist} -% \documentclass[some,options]{whatever} -% -% If used after \documentclass, \@filelist is -% parsed for classes. The additional data -% specified options and requested version is no -% longer available here. -% -% \MainClass contains the first loaded class. -% \ClassList stores the class entries, eg. -% \ClassList -> \ClassListEntry{myarticle}{a4paper}{} -% \ClassListEntry{article}{}{} -% \ClassListEntry has three arguments: -% #1: class name -% #2: options given in \documentclass/\LoadClass -% #3: requested version, not the version of class -% \PrintClassList prints the list on screen it can be -% configured by -% \PrintClassListTitle for the title and -% \PrintClassListEntry for formatting the entries. -% -% History: -% 2005/06/19 v1.0: -% * first published version -% (comp.text.tex, CTAN). -% 2005/06/19 v1.1: -% * After \documentclass the package looks -% at \@filelist instead of aborting with error. -% +%% +%% This is file `classlist.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% classlist.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006 by Heiko Oberdiek +%% +%% 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 classlist.dtx +%% and the derived files +%% classlist.sty, classlist.pdf, classlist.ins, classlist.drv. +%% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{classlist}% - [2005/06/19 v1.0 Record loaded classes (HO)] - + [2006/02/20 v1.2 Record loaded classes (HO)] \let\ClassList\@empty \let\MainClassName\relax - \ifx\@classoptionslist\relax - - % before \documentclass - \let\CL@org@fileswith@pti@ns\@fileswith@pti@ns \def\@fileswith@pti@ns#1[#2]#3[#4]{% - % #1: \@clsextension - % #2: options of \documentclass/\LoadClass - % #3: class name - % #4: requested version \ifx#1\@clsextension \@ifl@aded#1{#3}{% \PackageInfo{classlist}{% @@ -94,17 +53,14 @@ \fi \CL@org@fileswith@pti@ns{#1}[{#2}]{#3}[{#4}]% } - + \let\@@fileswith@pti@ns\@fileswith@pti@ns \else - - % after \documentclass \PackageInfo{classlist}{Use \string\@filelist\space method}% \let\ClassListEntry\relax \expandafter\def\expandafter\CL@test \expandafter#\expandafter1\@clsextension#2\@nil{% \ifx\\#2\\% - % name does not contain \@clsextension \else \expandafter\CL@test@i\CL@entry\@nil \fi @@ -124,7 +80,6 @@ }% }% \else - % names with more than one \@clsextension are not supported. \fi } \@for\CL@entry:=\@filelist\do{% @@ -132,7 +87,6 @@ \CL@entry\@clsextension\@nil }% \fi - \providecommand*{\PrintClassListEntry}[3]{% \toks@{* #1}% \typeout{\the\toks@}% @@ -147,7 +101,6 @@ \ClassList \endgroup } - \def\CL@InfoEntry#1#2#3{% \advance\count@ by \@ne \def\x{#2}% @@ -174,3 +127,5 @@ \endgroup } \endinput +%% +%% End of file `classlist.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/colonequals.sty b/Master/texmf-dist/tex/latex/oberdiek/colonequals.sty new file mode 100644 index 00000000000..af34c8051e6 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/colonequals.sty @@ -0,0 +1,120 @@ +%% +%% This is file `colonequals.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% colonequals.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 colonequals.dtx +%% and the derived files +%% colonequals.sty, colonequals.pdf, colonequals.ins, colonequals.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{colonequals}% + [2006/08/01 v1.0 Colon equals symbols (HO)] +\newcommand*{\colonsep}{} +\newcommand*{\doublecolonsep}{} +\def\@center@colon{% + \mathpalette\@center@math{:}% +} +\def\@center@math#1#2{% + \vcenter{% + \m@th + \hbox{$#1#2$}% + }% +} +\newcommand*{\ratio}{% + \ensuremath{% + \mathrel{% + \@center@colon + }% + }% +} +\newcommand*{\coloncolon}{% + \ensuremath{% + \mathrel{% + \@center@colon + \doublecolonsep + \@center@colon + }% + }% +} +\def\@make@colon@set#1#2{% + \begingroup + \let\@center@colon\relax + \let\newcommand\relax + \let\ensuremath\relax + \let\mathrel\relax + \let\colonsep\relax + \let\doublecolonsep\relax + \def\csx##1{% + \expandafter\noexpand\csname ##1\endcsname + }% + \edef\x{\endgroup + \newcommand*{\csx{colon#1}}{% + \ensuremath{% + \mathrel{% + \@center@colon + \colonsep + {#2}% + }% + }% + }% + \newcommand*{\csx{coloncolon#1}}{% + \ensuremath{% + \mathrel{% + \@center@colon + \doublecolonsep + \@center@colon + \colonsep + {#2}% + }% + }% + }% + \newcommand*{\csx{#1colon}}{% + \ensuremath{% + \mathrel{% + {#2}% + \colonsep + \@center@colon + }% + }% + }% + \newcommand*{\csx{#1coloncolon}}{% + \ensuremath{% + \mathrel{% + {#2}% + \colonsep + \@center@colon + \doublecolonsep + \@center@colon + }% + }% + }% + }% + \x +} +\@make@colon@set{equals}{=}% +\@make@colon@set{minus}{-}% +\@make@colon@set{approx}{\approx} +\@make@colon@set{sim}{\sim} +\endinput +%% +%% End of file `colonequals.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/dtx-attach.sty b/Master/texmf-dist/tex/latex/oberdiek/dtx-attach.sty new file mode 100644 index 00000000000..5f4eaa0846e --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/dtx-attach.sty @@ -0,0 +1,41 @@ +%% +%% This is file `dtx-attach.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% embedfile.dtx (with options: `dtxattach') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 embedfile.dtx +%% and the derived files +%% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +%% dtx-attach.sty, embedfile-example-plain.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{dtx-attach} + [2006/08/16 v1.0 Embed \string\jobname.dtx (HO)] +\RequirePackage{embedfile}[2006/08/16] +\embedfile[ + stringmethod=escape, + mimetype=plain/text, + desc={LaTeX docstrip source archive for package `\jobname'} +]{\jobname.dtx} +\endinput +%% +%% End of file `dtx-attach.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/dvipscol.sty b/Master/texmf-dist/tex/latex/oberdiek/dvipscol.sty index bd53221b757..0e5983b19d2 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/dvipscol.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/dvipscol.sty @@ -1,69 +1,44 @@ -% File: dvipscol.sty -% Version: 2000/08/31 v1.0 -% Author: Heiko Oberdiek -% Email: -% -% Copyright: Copyright (C) 2000 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 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.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% Function: This package tries a solution, if the program -% dvips complains: -% "! out of color stack space" -% The driver file `dvips.def' contains the -% low level color commands for the package `color'. -% Each time a color is set, the current color is -% pushed on the color stack before and after the -% current group the old color is popped from -% the stack and set again (via \aftergroup). -% But the color stack size of dvips is limited, -% so a stack overflow can occur, if there are -% too many color setting operations in a group. -% Only at the bottom group level (no group), -% the color can be set directly without pushing -% the current color on the stack before, because -% there is no group at bottom level that can end. -% With e-TeX the group level can easily be -% detected (\currentgrouplevel). Alone with TeX -% this is not possible. -% -% Recommended: e-TeX (explanation see above) -% -% Use: * With e-TeX the package fixes \set@color, therefore -% no interaction with the user is required. -% * Without e-TeX the package defines \nogroupcolor, -% that the user can use manually instead of \color. -% But caution: it should only be used outside of all -% groups, for example the following will not work: -% \textcolor{black}{\nogroupcolor{blue}...} -% -% History: 2000/08/31 v1.0: -% first public release created as answer to -% a question of Deepak Goel in comp.text.tex: -% "\color{} problems.. :Out of stack space.." -% +%% +%% This is file `dvipscol.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% dvipscol.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2000, 2006 by Heiko Oberdiek +%% +%% 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 dvipscol.dtx +%% and the derived files +%% dvipscol.sty, dvipscol.pdf, dvipscol.ins, dvipscol.drv. +%% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{dvipscol}[2000/08/31 v1.0 Fix for dvips.def (HO)] - +\ProvidesPackage{dvipscol}% + [2006/02/20 v1.1 Fix for dvips.def (HO)] \@ifundefined{ver@dvips.def}{% \PackageWarningNoLine{dvipscol}{% Nothing to fix, because \string`dvips.def\string' not loaded% }% \endinput } - \CheckCommand*{\set@color}{% \special{color push \current@color}% \aftergroup\reset@color } - \newcommand*{\nogroupcolor}{% \let\saved@org@set@color\set@color \def\set@color{% @@ -72,7 +47,6 @@ }% \color } - \ifx\currentgrouplevel\@undefined \PackageWarningNoLine{dvipscol}{% \string\set@color\space cannot be fixed, % @@ -90,3 +64,5 @@ \fi } \endinput +%% +%% End of file `dvipscol.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/embedfile.sty b/Master/texmf-dist/tex/latex/oberdiek/embedfile.sty new file mode 100644 index 00000000000..6376f224799 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/embedfile.sty @@ -0,0 +1,308 @@ +%% +%% This is file `embedfile.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% embedfile.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 embedfile.dtx +%% and the derived files +%% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +%% dtx-attach.sty, embedfile-example-plain.tex. +%% +\begingroup + \expandafter\let\expandafter\x\csname ver@embedfile.sty\endcsname + \ifcase 0% + \ifx\x\relax % plain + \else + \ifx\x\empty % LaTeX + \else + 1% + \fi + \fi + \else + \expandafter\ifx\csname PackageInfo\endcsname\relax + \def\x#1#2{% + \immediate\write-1{Package #1 Info: #2.}% + }% + \else + \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% + \fi + \x{embedfile}{The package is already loaded}% + \endgroup + \expandafter\endinput + \fi +\endgroup +\begingroup + \expandafter\ifx\csname ProvidesPackage\endcsname\relax + \def\x#1#2#3[#4]{\endgroup + \immediate\write-1{Package: #3 #4}% + \xdef#1{#4}% + }% + \else + \def\x#1#2[#3]{\endgroup + #2[{#3}]% + \ifx#1\relax + \xdef#1{#3}% + \fi + }% + \fi +\expandafter\x\csname ver@embedfile.sty\endcsname +\ProvidesPackage{embedfile}% + [2006/08/16 v1.0 embed files into PDF (HO)] +\edef\EmbedFileRestoreCatcodes{% + \catcode39 \the\catcode39 % ' + \catcode40 \the\catcode40 % ( + \catcode41 \the\catcode41 % ) + \catcode47 \the\catcode47 % / + \catcode60 \the\catcode60 % < + \catcode62 \the\catcode62 % > + \catcode64 \the\catcode64 % @ + \catcode91 \the\catcode91 % [ + \catcode93 \the\catcode93 % ] + \catcode96 \the\catcode96 % ` +} +\catcode39 12 % ' +\catcode40 12 % ( +\catcode41 12 % ) +\catcode47 12 % / +\catcode60 12 % < +\catcode62 12 % > +\catcode64 11 % @ +\catcode91 12 % [ +\catcode93 12 % ] +\catcode96 12 % ` +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname PackageError\endcsname\relax + \def\EmbedFile@PackageError#1#2{% + \errhelp{#2}% + \errmessage{Package embedfile Error: #1.}% + }% +\else + \def\EmbedFile@PackageError#1#2{% + \begingroup + \let\on@line\empty + \PackageError{embedfile}{#1}{#2}% + \endgroup + }% +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname RequirePackage\endcsname\relax + \def\EmbedFile@RequirePackage#1#2{% + \expandafter\ifx\csname #2\encsname\relax + \input #1.sty\relax + \fi + }% +\else + \def\EmbedFile@RequirePackage#1#2{% + \expandafter\ifx\csname #2\endcsname\relax + \RequirePackage{#1}% + \fi + }% +\fi +\EmbedFile@RequirePackage{ifpdf}{ifpdf} +\ifpdf +\else + \EmbedFile@PackageError{% + Missing pdfTeX in PDF mode% + }{% + Currently other drivers are not supported. Package loading is aborted.% + }% + \EmbedFileRestoreCatcodes + \expandafter\endinput +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdffilesize\endcsname\relax + \EmbedFile@PackageError{% + Unsupported pdfTeX version% + }{% + At least version 1.30 is necessary. Package loading is aborted.% + }% + \EmbedFileRestoreCatcodes + \expandafter\endinput +\fi +\EmbedFile@RequirePackage{keyval}{define@key} +\def\EmbedFile@DefineKey#1#2{% + \define@key{EmbedFile}{#1}{% + \expandafter\def\csname EmbedFile@#1\endcsname{##1}% + }% + \expandafter\def\csname EmbedFile@#1\endcsname{#2}% +} +\EmbedFile@DefineKey{mimetype}{} +\EmbedFile@DefineKey{filespec}{\EmbedFile@file} +\EmbedFile@DefineKey{filesystem}{} +\EmbedFile@DefineKey{desc}{} +\EmbedFile@DefineKey{stringmethod}{% + \ifx\pdfstringdef\@undefined + escape% + \else + \ifx\pdfstringdef\relax + escape% + \else + psd% + \fi + \fi +} +\def\embedfilesetup{% + \setkeys{EmbedFile}% +} +\def\embedfile{% + \@ifnextchar[\EmbedFile@embedfile{\EmbedFile@embedfile[]}% +} +\def\EmbedFile@embedfile[#1]#2{% + \ifEmbedFile@finished + \EmbedFile@PackageError{% + \string\embedfile\space after \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \begingroup + \def\EmbedFile@file{#2}% + \setkeys{EmbedFile}{#1}% + \expandafter\ifx\expandafter\\\pdffilesize{\EmbedFile@file}\\% + \EmbedFile@PackageError{% + File `\EmbedFile@file' not found% + }{% + The unknown file is not embedded.% + }% + \else + \EmbedFile@convert\EmbedFile@filespec\EmbedFile@@filespec + \ifx\EmbedFile@desc\empty + \let\EmbedFile@@desc\empty + \else + \EmbedFile@convert\EmbedFile@desc\EmbedFile@@desc + \fi + \immediate\pdfobj stream attr{% + /Type/EmbeddedFile% + \ifx\EmbedFile@mimetype\empty + \else + /Subtype/\pdfescapename{\EmbedFile@mimetype}% + \fi + /Params<<% + /ModDate(\pdffilemoddate{\EmbedFile@file})% + /Size \pdffilesize{\EmbedFile@file}% + /CheckSum<\pdfmdfivesum file{\EmbedFile@file}>% + >>% + }file{\EmbedFile@file}\relax + \immediate\pdfobj{% + <<% + /Type/Filespec% + \ifx\EmbedFile@filesystem\empty + \else + /FS/\pdfescapename{\EmbedFile@filesystem}% + \fi + /F(\EmbedFile@@filespec)% + \ifx\EmbedFile@@desc\empty + \else + /Desc(\EmbedFile@@desc)% + \fi + /EF<<% + /F \the\pdflastobj\space 0 R% + >>% + >>% + }% + \EmbedFile@add{% + \EmbedFile@@filespec + }{\the\pdflastobj\space 0 R}% + \fi + \endgroup + \fi +} +\def\EmbedFile@convert#1#2{% + \ifnum\pdfstrcmp{\EmbedFile@stringmethod}{psd}=0 % + \pdfstringdef\EmbedFile@temp{#1}% + \let#2\EmbedFile@temp + \else + \edef#2{\pdfescapestring{#1}}% + \fi +} +\global\let\EmbedFile@list\empty +\def\EmbedFile@add#1#2{% + \begingroup + \edef\key{\pdfescapehex{#1}}% + \ifx\EmbedFile@list\empty + \xdef\EmbedFile@list{\noexpand\do{\key}{#2}}% + \else + \def\do##1##2{% + \ifnum\pdfstrcmp{##1}{\key}>0 % + \edef\x{% + \toks@{% + \the\toks@% + \noexpand\do{\key}{#2}% + \noexpand\do{##1}{##2}% + }% + }% + \x + \def\do####1####2{% + \toks@\expandafter{\the\toks@\do{####1}{####2}}% + }% + \def\stop{% + \xdef\EmbedFile@list{\the\toks@}% + }% + \else + \toks@\expandafter{\the\toks@\do{##1}{##2}}% + \fi + }% + \def\stop{% + \xdef\EmbedFile@list{\the\toks@\noexpand\do{\key}{#2}}% + }% + \toks@{}% + \EmbedFile@list\stop + \fi + \endgroup +} +\newif\ifEmbedFile@finished +\def\embedfilefinish{% + \ifEmbedFile@finished + \EmbedFile@PackageError{% + Too many invocations of \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \ifx\EmbedFile@list\empty + \else + \global\EmbedFile@finishedtrue + \begingroup + \def\do##1##2{% + <##1>##2% + }% + \immediate\pdfobj{% + <<% + /Names[\EmbedFile@list]% + >>% + }% + \pdfnames{% + /EmbeddedFiles \the\pdflastobj\space 0 R% + }% + \endgroup + \fi + \fi +} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname AtEndDocument\endcsname\relax +\else + \AtEndDocument{\embedfilefinish}% +\fi +\EmbedFileRestoreCatcodes +\endinput +%% +%% End of file `embedfile.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/engord.sty b/Master/texmf-dist/tex/latex/oberdiek/engord.sty deleted file mode 100644 index 0df08d33c6a..00000000000 --- a/Master/texmf-dist/tex/latex/oberdiek/engord.sty +++ /dev/null @@ -1,171 +0,0 @@ -% File: engord.sty -% Version: 2003/04/28 v1.1 -% Author: Heiko Oberdiek -% -% Function: Converts numbers to english ordinal numbers. -% -% Copyright: Copyright (C) 2000, 2003 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 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.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% Use: -% * \engord{} -% It prints the value of the LaTeX counter as English -% ordinal number. It can be used so as \arabic, \roman, -% or \alph. -% * \engordnumber{} -% It prints the number as English ordinal number. -% * \engordletters#1 -% This command formats the English ordinal letters -% after the number. It defaults to \textsuperscript. -% * \engorderror#1 -% It can be redefined, if an other error handling is -% wanted. The argument is a negative number or zero. -% -% Examples: -% * \engordnumber{1} ==> 1st -% \engordnumber{12} ==> 12th -% \engordnumber{123} ==> 123rd -% \engord{page} ==> 1st (if page has the value of one) -% * The default output of a counter can be redefined: -% \newcounter{mycounter} -% \renewcommand{\theengcounter}{\engord{mycounter}} -% * Because the implementation of \engord and \engordnumber -% is kept expandable, these commands can be used to make -% command names with an appropriate definition of -% \engordletters: -% \renewcommand*{\engordletters}[#1]{#1} -% \@namedef{My\engordnumber{3}Command}{...} -% This generates the command name `\My4rdCommand'. -% * If the letters should not be raised, \engordletters -% can be redefined as follows: -% \renewcommand*{\engordletters}[1]{#1} -% -% History: -% 2000/05/23 v1.0: first public release -% 2003/04/28 v1.1: -% * Bug fix for 30, 40, 50, ..., 100, 130, ... -% * \ordletters renamed to documented \engordletters -% -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{engord}% - [2003/04/28 v1.1 English ordinal numbers (HO)] - -% \engordletters is called with one argument, the english -% ord letters, and contains the code to format them. It -% defaults to \textsuperscript: -\providecommand{\engordletters}{\textsuperscript} - -% \engorderror is called, if the number is zero -% or negative. -\providecommand*{\engorderror}[1]{% - #1\engordletters{!ERROR!}% - \PackageWarning{engord}{% - `#1' is not an ordinal number% - }% -} - -% \engord expects a LaTeX counter name as argument and -% calls \engordnumber -\newcommand*{\engord}[1]{% - \engordnumber{\value{#1}}% -} - -% \engordnumber is the user command to print a number as -% english ordinal number. The argument can be any -% TeX number like explicit numbers, register values, ... -% -% In a safe way it converts the TeX number argument -% into a form that only consists of decimal digits -\newcommand*{\engordnumber}[1]{% - \expandafter\EO@number\expandafter{\number#1}% -} - -% \EO@number expects a number with decimal digits as -% argument and looks at the size of the number and -% the count of the digits: -\def\EO@number#1{% - \ifnum#1<1 % handle the error case - \engorderror{#1}% - \else - \ifnum#1<21 - \EO@ord{#1}% - \else - \ifnum#1<100 - \EO@twodigits#1% - \else - \@ReturnAfterFi{% - \EO@reverse#1\@nil{}\EO@afterreverse - }% - \fi - \fi - \fi -} - -% An internal help macro to prevent a too deep \if nesting. -\long\def\@ReturnAfterFi#1\fi{\fi#1} - -% \EO@ord prints the number with ord letters -% #1: decimal digits, #1 < 21 -\def\EO@ord#1{% - #1% - \expandafter\engordletters - \ifcase#1{th}\or - {st}\or - {nd}\or - {rd}\else - {th}% - \fi -} - -% \EO@twodigits expects a number with two digits, -% 20 < number < 100 -\def\EO@twodigits#1#2{% - #1\EO@ord{#2}% -} - -% \EO@reverse reverses the digits of the number -% #1: next digit -% #2: rest of the digits -% #3: already reversed digits -% #4: next command to call with the reversed number -% as argument -\def\EO@reverse#1#2\@nil#3#4{% - \ifx\\#2\\% - #4{#1#3}% - \else - \@ReturnAfterFi{% - \EO@reverse#2\@nil{#1#3}{#4}% - }% - \fi -} - -% \EO@afterreverse calls \EO@reverseback so that -% \EO@reverseback can inspect the digits of the number -\def\EO@afterreverse#1{% - \EO@reverseback#1\@nil -} - -% \EO@reverseback reverses the reversion -% #1: the last digit of the number -% #2: the second last digit of the number -% #3: first digits of the number in reversed order, -% it is not empty, because \EO@reverseback is -% only called with numbers > 100. -\def\EO@reverseback#1#2#3\@nil{% - \EO@reverse#3\@nil{}\@firstofone - \ifnum#2#1<21 - \EO@ord{#2#1}% - \else - #2\EO@ord{#1}% - \fi -} - -\endinput diff --git a/Master/texmf-dist/tex/latex/oberdiek/epstopdf.sty b/Master/texmf-dist/tex/latex/oberdiek/epstopdf.sty index 1c1ab79be76..4660d994248 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/epstopdf.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/epstopdf.sty @@ -1,90 +1,142 @@ -% File: epstopdf.sty -% Version: 2001/02/04 v1.1 -% Author: Heiko Oberdiek -% Email: -% -% Copyright: Copyright (C) 2001 Heiko Oberdiek. -% -% This program may be distributed and/or modified under -% the conditions of the LaTeX Project Public License, -% either version 1.2 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.2 or later is part of all distributions -% of LaTeX version 1999/12/01 or later. -% -% Function: This packages adds support of handling eps images -% to package graphic{s,x} with option `pdftex'. -% If an eps image is detected, epstopdf is automatically -% called to convert it to pdf format. -% -% Required: * The program `epstopdf'. -% * The feature `\write18' has to be enabled to get -% the conversion via the program epstopdf work: -% * command line option: -shell-escape -% example: pdflatex -shell-escape test.tex -% * configuraton file `texmf.cnf': shell_escape = 1 -% -% Use: The package is loaded after graphic{s,x}, eg: -% \usepackage[pdftex]{graphicx} -% \usepackage{epstopdf} -% Images with extension `.eps' are now detected -% and supported: -% * Implicitly: \includegraphics{bild} -% If `bild.eps' can only be found, -% then it is converted to the file `bild.pdf', -% that will be used by pdfTeX. -% On the next ocurrences or on the next pdfTeX run, -% the pdf file is already available, so the -% conversion step is skipped. -% * Explicitly: \includegraphics{bild.eps} -% Each time the conversion program is called. -% -% History: 2001/01/06 v1.0: -% * first public version, -% published in the pdftex mailing list. -% 2001/02/04 v1.1: -% * minor documentation update. -% * CTAN. -% -\NeedsTeXFormat{LaTeX2e} +%% +%% This is file `epstopdf.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% epstopdf.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2001, 2006 by Heiko Oberdiek +%% +%% 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 epstopdf.dtx +%% and the derived files +%% epstopdf.sty, epstopdf.pdf, epstopdf.ins, epstopdf.drv. +%% +\begingroup + \expandafter\let\expandafter\x\csname ver@epstopdf.sty\endcsname + \ifcase 0% + \ifx\x\relax % plain + \else + \ifx\x\empty % LaTeX + \else + 1% + \fi + \fi + \else + \expandafter\ifx\csname PackageInfo\endcsname\relax + \def\x#1#2{% + \immediate\write-1{Package #1 Info: #2.}% + }% + \else + \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% + \fi + \x{epstopdf}{The package is already loaded}% + \endgroup + \expandafter\endinput + \fi +\endgroup +\begingroup + \expandafter\ifx\csname ProvidesPackage\endcsname\relax + \def\x#1#2#3[#4]{\endgroup + \immediate\write-1{Package: #3 #4}% + \xdef#1{#4}% + }% + \else + \def\x#1#2[#3]{\endgroup + #2[{#3}]% + \ifx#1\relax + \xdef#1{#3}% + \fi + }% + \fi +\expandafter\x\csname ver@epstopdf.sty\endcsname \ProvidesPackage{epstopdf}% - [2001/02/04 v1.1 Conversion with epstopdf on the fly (HO)] - -% Check, whether package graphics is loaded -% (also graphicx loads graphics) -\@ifpackageloaded{graphics}{}{% - \PackageWarningNoLine{epstopdf}{% - No graphics package \string`graphic{s,x}\string' loaded% + [2006/08/26 v1.3 Conversion with epstopdf on the fly (HO)] +\@ifundefined{PackageWarning}{% + \def\PackageWarning#1#2{% + \begingroup + \newlinechar=10 % + \def\MessageBreak{% + ^^J(#1)\@spaces\@spaces\@spaces\@spaces + }% + \immediate\write16{^^JPackage #1 Warning: #2\on@line.^^J}% + \endgroup }% - \endinput -} -% Check, whether pdftex.def is loaded -\@ifundefined{ver@pdftex.def}{% +}{} +\@ifundefined{PackageWarningNoLine}{% + \def\PackageWarningNoLine#1#2{% + \PackageWarning{#1}{#2\@gobble}% + }% +}{} +\@ifundefined{on@line}{% + \def\on@line{ on input line \the\inputlineno}% +}{} +\@ifundefined{@spaces}{% + \def\@spaces{\space\space\space\space}% +}{} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname Gin@setfile\endcsname\relax \PackageWarningNoLine{epstopdf}{% - Graphics driver file \string`pdftex.def\string' not loaded% - } - \endinput -} - -% Patch \Gin@setfile to execute #3, if it contains -% a command -\let\orgGin@setfile\Gin@setfile + No graphics package \string`graphic{s,x}\string' found% + }% + \expandafter\endinput +\fi +\begingroup + \def\x{pdftex.def}% + \ifx\Gin@driver\x + \else + \PackageWarningNoLine{epstopdf}{% + Graphics driver file \string`pdftex.def\string' not found% + } + \expandafter\endgroup\expandafter\endinput + \fi +\endgroup +\begingroup + \expandafter\ifx\csname pdfshellescape\endcsname\relax + \else + \ifnum\pdfshellescape>0 % + \else + \PackageWarningNoLine{epstopdf}{% + Shell escape feature is not enabled% + }% + \fi + \fi +\endgroup +\let\ETEorg@Gin@setfile\Gin@setfile \def\Gin@setfile#1#2#3{% \if`\@car #3\relax\@nil \immediate\write18{\@cdr #3\@empty\@nil}% - \orgGin@setfile{#1}{#2}{\Gin@base #2}% + \ETEorg@Gin@setfile{#1}{#2}{\Gin@base #2}% + \else + \ETEorg@Gin@setfile{#1}{#2}{#3}% + \fi +} +\@ifundefined{Gin@extensions}{% + \def\Gin@extensions{.eps}% +}{% + \expandafter\ifx\expandafter\indent\Gin@extensions\indent + \def\Gin@extensions{.eps}% \else - \orgGin@setfile{#1}{#2}{#3}% + \expandafter\def\expandafter\Gin@extensions\expandafter{% + \Gin@extensions,.eps% + }% \fi } - -% Adding .eps at the end of the list of extensions, -% defined by \DeclareGraphicsExtensions -\g@addto@macro\Gin@extensions{,.eps} - -% \DeclareGraphicsRule for .eps \@namedef{Gin@rule@.eps}#1{{pdf}{.pdf}{`epstopdf #1}} - \endinput +%% +%% End of file `epstopdf.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/grffile.sty b/Master/texmf-dist/tex/latex/oberdiek/grffile.sty new file mode 100644 index 00000000000..f0b07a4e51e --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/grffile.sty @@ -0,0 +1,207 @@ +%% +%% This is file `grffile.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% grffile.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 grffile.dtx +%% and the derived files +%% grffile.sty, grffile.pdf, grffile.ins, grffile.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{grffile}% + [2006/08/17 v1.1 Extended file name support for graphics (HO)] +\edef\grffile@RestoreCatcodes{% + \catcode`\noexpand\=\the\catcode`\=\relax + \catcode`\noexpand\:\the\catcode`\:\relax + \catcode`\noexpand\.\the\catcode`\.\relax + \catcode`\noexpand\'\the\catcode`\'\relax + \catcode`\noexpand\<\the\catcode`\<\relax + \catcode`\noexpand\>\the\catcode`\>\relax + \catcode`\noexpand\*\the\catcode`\*\relax + \catcode`\noexpand\^\the\catcode`\^\relax + \catcode`\noexpand\~\the\catcode`\~\relax +} +\@makeother\= +\@makeother\: +\@makeother\. +\@makeother\' +\@makeother\< +\@makeother\> +\@makeother\* +\catcode`\^=7 % +\catcode`\~=\active +\RequirePackage{ifpdf} +\RequirePackage{kvoptions}[2006/08/17] +\SetupKeyvalOptions{ + family=Gin, + prefix=grffile@ +} +\DeclareBoolOption[true]{multidot} +\DeclareBoolOption[false]{extendedchars} +\DeclareBoolOption{space} +\DeclareDefaultOption{% + \PassOptionsToPackage\CurrentOption{graphics}% +} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdffilesize\endcsname\relax + \grffile@spacefalse + \let\grffile@space@disabled\@empty + \def\grffile@spacetrue{% + \PackageWarning{grffile}{% + Option `space' is not available,\MessageBreak + because it needs pdfTeX >= 1.30% + }% + }% +\else + \ifpdf + \grffile@spacetrue + \else + \grffile@spacefalse + \fi +\fi +\ProcessKeyvalOptions* +\RequirePackage{graphics} +\newcommand*{\grffilesetup}{% + \setkeys{Gin}% +} +\let\grffile@org@Ginclude@graphics\Ginclude@graphics +\renewcommand*{\Ginclude@graphics}{% + \ifgrffile@extendedchars + \begingroup + \csname @safe@activestrue\endcsname + \edef~{\string~}% + \grffile@inputenc@loop\^^A\^^H% + \grffile@inputenc@loop\^^K\^^K% + \grffile@inputenc@loop\^^N\^^_% + \grffile@inputenc@loop\^^?\^^ff% + \expandafter\grffile@extchar@Ginclude@graphics + \else + \expandafter\grffile@Ginclude@graphics + \fi +} +\def\grffile@extchar@Ginclude@graphics#1{% + \edef\x{\endgroup + \noexpand\grffile@Ginclude@graphics{#1}% + }% + \x +} +\def\grffile@inputenc@loop#1#2{% + \count@=`#1\relax + \loop + \begingroup + \uccode`\~=\count@ + \uppercase{% + \endgroup + \edef~{\string~}% + }% + \ifnum\count@<`#2\relax + \advance\count@\@ne + \repeat +} +\def\grffile@space@getbase#1{% + \edef\grffile@tempa{% + \def\noexpand\@tempa####1#1\noexpand\@nil{% + \def\noexpand\Gin@base{####1}% + }% + }% + \grffile@IfFileExists{\filename@area\filename@base#1}{% + \grffile@tempa + \expandafter\@tempa\grffile@file@found\@nil + \edef\Gin@ext{#1}% + }{% + }% +} +\def\grffile@IfFileExists#1{% + \expandafter\ifx\expandafter\\\pdffilesize{#1}\\% + \let\reserved@a\@secondoftwo + \ifx\input@path\@undefined + \else + \expandafter\@tfor\expandafter\reserved@b\expandafter + :\expandafter=\input@path\do{% + \expandafter\ifx\expandafter\\\pdffilesize{\reserved@b#1}\\% + \else + \edef\grffile@file@found{\reserved@b#1}% + \let\reserved@a\@firstoftwo + \@break@tfor + \fi + }% + \fi + \expandafter\reserved@a + \else + \edef\grffile@file@found{#1}% + \expandafter\@firstoftwo + \fi +} + +\def\grffile@Ginclude@graphics#1{% + \begingroup + \ifgrffile@space + \let\Gin@getbase\grffile@space@getbase + \fi + \ifgrffile@multidot + \let\filename@base\@empty + \let\filename@simple\grffile@filename@simple + \fi + \grffile@org@Ginclude@graphics{#1}% + \endgroup +}% + +\def\grffile@filename@simple#1.#2\\{% + \ifx\\#2\\% + \let\filename@ext\relax + \else + \expandafter\ifx\csname + Gin@rule@.\filename@dot #2\\\endcsname\relax + \edef\filename@base{\filename@base #1.}% + \grffile@ReturnAfterFiFiBase{\grffile@filename@simple #2\\}% + \else + \edef\filename@ext{\filename@dot #2\\}% + \fi + \fi + \edef\filename@base{\filename@base #1}% +} +\def\grffile@ReturnAfterFiFiBase#1#2\filename@base#3{\fi\fi#1} +\def\grffile@option@status#1{% + \begingroup + \let\on@line\@empty + \PackageInfo{grffile}{% + Option `#1' is % + \expandafter\ifx\csname ifgrffile@#1\expandafter\endcsname + \csname iftrue\endcsname + set to `true'% + \else + \expandafter\ifx\csname grffile@#1@disabled\endcsname\@empty + not available% + \else + set to `false'% + \fi + \fi + }% + \endgroup +} +\grffile@option@status{multidot} +\grffile@option@status{extendedchars} +\grffile@option@status{space} +\grffile@RestoreCatcodes +\endinput +%% +%% End of file `grffile.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/holtxdoc.sty b/Master/texmf-dist/tex/latex/oberdiek/holtxdoc.sty new file mode 100644 index 00000000000..b40a108ba63 --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/holtxdoc.sty @@ -0,0 +1,162 @@ +%% +%% This is file `holtxdoc.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% holtxdoc.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 1999-2006 by Heiko Oberdiek +%% +%% 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 holtxdoc.dtx +%% and the derived files +%% holtxdoc.sty, holtxdoc.pdf, holtxdoc.ins, holtxdoc.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{holtxdoc}% + [2006/06/02 v0.7 Private additional ltxdoc support (HO)] +\RequirePackage[numbered]{hypdoc} +\RequirePackage{array} +\def\hld@info#1{% + \PackageInfo{holtxdoc}{#1\@gobble}% +} +\def\hld@warn#1{% + \PackageWarningNoLine{holtxdoc}{#1}% +} +\newcommand*{\StartHistory}{% + \section{History}% +} +\newcommand*{\HistVersion}[1]{% + \subsection*{% + \phantomsection + \addcontentsline{toc}{subsection}{[#1]}% + [#1]% + }% + \def\HistLabel##1{% + \begingroup + \edef\x{[#1]}% + \let\@currentlabel\x + \label{##1}% + \endgroup + }% +} +\newenvironment{History}{% + \StartHistory + \def\Version##1{% + \HistVersion{##1}% + \itemize + }% + \let\endVersion\enditemize +}{} +\newcommand{\URL}[2]{% + #1\footnote{Url: \url{#2}}% +} +\newcommand*{\NameEmail}[2]{% + \expandafter\hld@NameEmail\expandafter{#2}{#1}% +} +\def\hld@NameEmail#1#2{% + \expandafter\hld@@NameEmail\expandafter{#2}{#1}% +} +\def\hld@@NameEmail#1#2{% + \ifx\\#1#2\\% + \hld@warn{% + Command \string\NameEmail\space without name and email% + }% + \else + \ifx\\#1\\% + \href{mailto:#2}{\nolinkurl{#2}}% + \else + #1% + \ifx\\#2\\% + \else + \footnote{% + #1's email address: % + \href{mailto:#2}{\nolinkurl{#2}}% + }% + \fi + \fi + \fi +} +\newcommand*{\Package}[1]{\texttt{#1}} +\newcommand*{\File}[1]{\texttt{#1}} +\newcommand*{\Verb}[1]{\texttt{#1}} +\newcommand*{\CS}[1]{\texttt{\expandafter\@gobble\string\\#1}} +\newcommand*{\CTAN}[1]{% + \href{ftp://ftp.ctan.org/tex-archive/#1}{\nolinkurl{CTAN:#1}}% +} +\newcommand*{\Newsgroup}[1]{% + \href{http://groups.google.com/group/#1}{\nolinkurl{news:#1}}% +} +\newcommand*{\xpackage}[1]{\textsf{#1}} +\newcommand*{\xclass}[1]{\textsf{#1}} +\newcommand*{\xoption}[1]{\textsf{#1}} +\newcommand*{\xfile}[1]{\texttt{#1}} +\newcommand*{\xext}[1]{\texttt{.#1}} +\newcommand*{\xemail}[1]{% + \textless\texttt{#1}\textgreater% +} +\newcommand*{\xnewsgroup}[1]{\texttt{#1}} +\newenvironment{declcs}[1]{% + \par + \addvspace{4.5ex plus 1ex}% + \vskip -\parskip + \noindent + \hspace{-\leftmargini}% + \def\M##1{\texttt{\{}\meta{##1}\texttt{\}}}% + \def\*{\unskip\,\texttt{*}}% + \begin{tabular}{|l|}% + \hline + \expandafter\SpecialUsageIndex\csname #1\endcsname + \cs{#1}% +}{% + \\% + \hline + \end{tabular}% + \nobreak + \par + \nobreak + \vspace{2.3ex}% + \vskip -\parskip + \noindent + \ignorespacesafterend +} +\providecommand*{\eTeX}{\mbox{$\varepsilon$-\TeX}} +\providecommand*{\pdfTeX}{pdf\TeX} +\providecommand*{\pdfLaTeX}{pdf\LaTeX} +\providecommand*{\teTeX}{te\TeX} +\providecommand*{\mikTeX}{mik\TeX} +\providecommand*{\MakeIndex}{\textsl{MakeIndex}} +\providecommand*{\docstrip}{\textsf{docstrip}} +\providecommand*{\plainTeX}{\mbox{plain-\TeX}} +\providecommand*{\VTeX}{V\TeX} +\CodelineIndex +\EnableCrossrefs +\setcounter{IndexColumns}{2} +\DoNotIndex{\begingroup,\endgroup,\bgroup,\egroup} +\DoNotIndex{\def,\edef,\xdef,\global,\long,\let} +\DoNotIndex{\expandafter,\noexpand,\string} +\DoNotIndex{\else,\fi,\or} +\DoNotIndex{\relax} +\addtolength{\textheight}{\headheight} +\addtolength{\textheight}{\headsep} +\setlength{\headheight}{0pt} +\setlength{\headsep}{0pt} +\addtolength{\topmargin}{-10mm} +\addtolength{\textheight}{20mm} +\endinput +%% +%% End of file `holtxdoc.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypbmsec.sty b/Master/texmf-dist/tex/latex/oberdiek/hypbmsec.sty index 3f55dd5d6d4..f5d1ca01c1e 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/hypbmsec.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/hypbmsec.sty @@ -6,42 +6,30 @@ %% %% hypbmsec.dtx (with options: `package') %% -%% This file is part of the package `hypbmsec' for use with LaTeX2e. +%% This is a generated file. %% -%% Function: Bookmarks in sectioning commands. +%% Copyright (C) 1998-2000, 2006 by +%% Heiko Oberdiek %% -%% Copyright (C) 1998,1999,2000 Heiko Oberdiek. +%% 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 program may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.2 -%% 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.2 or later is part of all distributions of LaTeX -%% version 1999/12/01 or later. +%% This work has the LPPL maintenance status "maintained". %% -%% Please send error reports and suggestions for improvements to -%% Heiko Oberdiek . +%% This Current Maintainer of this work is Heiko Oberdiek. +%% +%% This work consists of the main source file hypbmsec.dtx +%% and the derived files +%% hypbmsec.sty, hypbmsec.pdf, hypbmsec.ins, hypbmsec.drv. %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{hypbmsec} - [2000/03/22 v2.1 Bookmarks in sectioning commands (HO).] -%% \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 \~} -%% +\ProvidesPackage{hypbmsec}% + [2006/02/20 v2.2 Bookmarks in sectioning commands (HO)] \@ifundefined{hbs@do}{}{% \PackageInfo{hypbmsec}{Package 'hypbmsec' is already loaded} \endinput diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty index 641c2dbc349..9d87bd2d252 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/hypcap.sty @@ -6,42 +6,30 @@ %% %% hypcap.dtx (with options: `package') %% -%% This file is part of the package `hypcap' for use with LaTeX2e. +%% This is a generated file. %% -%% Function: Adjusting anchors of captions. +%% Copyright (C) 1999-2001, 2006 by +%% Heiko Oberdiek %% -%% Copyright (C) 1999-2001 Heiko Oberdiek. +%% 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 program may be distributed and/or modified under -%% the conditions of the LaTeX Project Public License, -%% either version 1.2 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.2 or later is part of all distributions -%% of LaTeX version 1999/12/01 or later. +%% This work has the LPPL maintenance status "maintained". %% -%% Please send error reports and suggestions for improvements to -%% Heiko Oberdiek . +%% This Current Maintainer of this work is Heiko Oberdiek. %% -\ProvidesPackage{hypcap} - [2001/08/27 v1.3 Adjusting anchors of captions (HO)] -%% \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 \~} -%% +%% This work consists of the main source file hypcap.dtx +%% and the derived files +%% hypcap.sty, hypcap.pdf, hypcap.ins, hypcap.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{hypcap}% + [2006/02/20 v1.5 Adjusting anchors of captions (HO)] \@ifundefined{hyper@@anchor}{% \PackageError{hypcap}{You have to load 'hyperref' first}\@ehc \endinput diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypdestopt.sty b/Master/texmf-dist/tex/latex/oberdiek/hypdestopt.sty new file mode 100644 index 00000000000..fc421170f6a --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/hypdestopt.sty @@ -0,0 +1,257 @@ +%% +%% This is file `hypdestopt.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hypdestopt.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006 by Heiko Oberdiek +%% +%% 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 hypdestopt.dtx +%% and the derived files +%% hypdestopt.sty, hypdestopt.pdf, hypdestopt.ins, hypdestopt.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{hypdestopt}% + [2006/06/01 v2.0 Hyperref destination optimizer (HO)] +\newif\ifHypDest@Verbose +\DeclareOption{verbose}{\HypDest@Verbosetrue} +\def\HypDest@VerboseInfo#1{% + \ifHypDest@Verbose + \PackageInfo{hypdestopt}{#1}% + \fi +} +\newif\ifHypDest@name +\DeclareOption{num}{\HypDest@namefalse} +\DeclareOption{name}{\HypDest@nametrue} +\ProcessOptions*\relax +\RequirePackage{ifpdf} +\ifpdf +\else + \PackageError{hypdestopt}{% + This package requires pdfTeX in PDF mode% + }\@ehc + \expandafter\endinput +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdfescapehex\endcsname\relax + \PackageError{hypdestopt}{% + This pdfTeX is too old, at least 1.30.0 is required% + }\@ehc + \expandafter\endinput +\fi +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname numexpr\endcsname\relax + \PackageError{hypdestopt}{% + e-TeX features are missing% + }\@ehc + \expandafter\endinput +\fi +\ifHypDest@name + \RequirePackage{alphalph}[2006/05/30] +\fi +\RequirePackage{auxhook} +\long\def\HypDest@PrependDocument#1{% + \begingroup + \toks\z@{#1}% + \toks\tw@\expandafter{\@begindocumenthook}% + \xdef\@begindocumenthook{\the\toks\z@\the\toks\tw@}% + \endgroup +} +\AddLineBeginAux{% + \string\providecommand{\string\HypDest@Use}[1]{}% +} +\newcounter{HypDest} +\ifHypDest@name + \def\HypDest@HexChar#1{% + \ifcase#1\or + 01\or 02\or 03\or 04\or 05\or 06\or 07\or + 08\or 09\or 0A\or 0B\or 0C\or 0E\or 0F\or + 10\or 11\or 12\or 13\or 14\or 15\or 16\or 17\or + 18\or 19\or 1A\or 1B\or 1C\or 1D\or 1E\or 1F\or + 20\or 21\or 22\or 23\or 24\or 25\or 26\or 27\or + 2A\or 2B\or 2C\or 2D\or 2E\or 2F\or + 30\or 31\or 32\or 33\or 34\or 35\or 36\or 37\or + 38\or 39\or 3A\or 3B\or 3C\or 3D\or 3E\or 3F\or + 40\or 41\or 42\or 43\or 44\or 45\or 46\or 47\or + 48\or 49\or 4A\or 4B\or 4C\or 4D\or 4E\or 4F\or + 50\or 51\or 52\or 53\or 54\or 55\or 56\or 57\or + 58\or 59\or 5A\or 5B\or 5D\or 5E\or 5F\or + 60\or 61\or 62\or 63\or 64\or 65\or 66\or 67\or + 68\or 69\or 6A\or 6B\or 6C\or 6D\or 6E\or 6F\or + 70\or 71\or 72\or 73\or 74\or 75\or 76\or 77\or + 78\or 79\or 7A\or 7B\or 7C\or 7D\or 7E\or 7F\or + 80\or 81\or 82\or 83\or 84\or 85\or 86\or 87\or + 88\or 89\or 8A\or 8B\or 8C\or 8D\or 8E\or 8F\or + 90\or 91\or 92\or 93\or 94\or 95\or 96\or 97\or + 98\or 99\or 9A\or 9B\or 9C\or 9D\or 9E\or 9F\or + A0\or A1\or A2\or A3\or A4\or A5\or A6\or A7\or + A8\or A9\or AA\or AB\or AC\or AD\or AE\or AF\or + B0\or B1\or B2\or B3\or B4\or B5\or B6\or B7\or + B8\or B9\or BA\or BB\or BC\or BD\or BE\or BF\or + C0\or C1\or C2\or C3\or C4\or C5\or C6\or C7\or + C8\or C9\or CA\or CB\or CC\or CD\or CE\or CF\or + D0\or D1\or D2\or D3\or D4\or D5\or D6\or D7\or + D8\or D9\or DA\or DB\or DC\or DD\or DE\or DF\or + E0\or E1\or E2\or E3\or E4\or E5\or E6\or E7\or + E8\or E9\or EA\or EB\or EC\or ED\or EE\or EF\or + F0\or F1\or F2\or F3\or F4\or F5\or F6\or F7\or + F8\or F9\or FA\or FB\or FC\or FD\or FE% + \fi + }% + \newalphalph\HypDest@HexString\HypDest@HexChar{250}% + \renewcommand*{\theHypDest}{% + \pdfunescapehex{\HypDest@HexString{\value{HypDest}}}% + }% +\else + \renewcommand*{\theHypDest}{% + \number\value{HypDest}% + }% +\fi +\edef\HypDest@Prefix{HypDest\string:} +\def\HypDest@Use#1{% + \begingroup + \edef\x{% + \expandafter\noexpand + \csname\HypDest@Prefix\pdfunescapehex{#1}\endcsname + }% + \expandafter\ifx\x\relax + \stepcounter{HypDest}% + \expandafter\xdef\x{\theHypDest}% + \let\on@line\@empty + \ifHypDest@name + \HypDest@VerboseInfo{% + Use: (\pdfunescapehex{#1}) -\string> % + 0x\pdfescapehex{\x} (\number\value{HypDest})% + }% + \else + \HypDest@VerboseInfo{% + Use: (\pdfunescapehex{#1}) -\string> num \x + }% + \fi + \fi + \endgroup +} +\AtBeginDocument{% + \let\HypDest@Use\@gobble +} +\def\HypDest@MarkUsed#1{% + \HypDest@VerboseInfo{% + MarkUsed: (#1)% + }% + \if@filesw + \immediate\write\@auxout{% + \string\HypDest@Use{\pdfescapehex{#1}}% + }% + \fi +}% +\HypDest@PrependDocument{% + \@ifpackagelater{hyperref}{2006/06/01}{}{% + \PackageError{hypdestopt}{% + hyperref 2006/06/01 v6.75a or later is required% + }\@ehc + }% + \ifHypDest@name + \let\HypDest@Org@DestName\Hy@DestName + \renewcommand*{\Hy@DestName}[2]{% + \@ifundefined{\HypDest@Prefix#1}{% + \HypDest@VerboseInfo{% + DestName: (#1) unused% + }% + }{% + \HypDest@Org@DestName{\csname\HypDest@Prefix#1\endcsname}{#2}% + \HypDest@VerboseInfo{% + DestName: (#1) % + 0x\pdfescapehex{\csname\HypDest@Prefix#1\endcsname}% + }% + }% + }% + \else + \renewcommand*{\Hy@DestName}[2]{% + \@ifundefined{\HypDest@Prefix#1}{% + \HypDest@VerboseInfo{% + DestName: (#1) unused% + }% + }{% + \pdfdest num\csname\HypDest@Prefix#1\endcsname#2\relax + \HypDest@VerboseInfo{% + DestName: (#1) % + num \csname\HypDest@Prefix#1\endcsname + }% + }% + }% + \fi + \let\HypDest@Org@StartlinkName\Hy@StartlinkName + \ifHypDest@name + \renewcommand*{\Hy@StartlinkName}[2]{% + \HypDest@MarkUsed{#2}% + \HypDest@Org@StartlinkName{#1}{% + \@ifundefined{\HypDest@Prefix#2}{% + #2% + }{% + \csname\HypDest@Prefix#2\endcsname + }% + }% + }% + \else + \renewcommand*{\Hy@StartlinkName}[2]{% + \HypDest@MarkUsed{#2}% + \@ifundefined{\HypDest@Prefix#2}{% + \HypDest@Org@StartlinkName{#1}{#2}% + }{% + \pdfstartlink attr{#1}% + goto num\csname\HypDest@Prefix#2\endcsname + \relax + }% + }% + \fi + \let\HypDest@Org@OutlineName\Hy@OutlineName + \ifHypDest@name + \renewcommand*{\Hy@OutlineName}[4]{% + \HypDest@Org@OutlineName{#1}{% + \@ifundefined{\HypDest@Prefix#2}{% + #2% + }{% + \csname\HypDest@Prefix#2\endcsname + }% + }{#3}{#4}% + }% + \else + \renewcommand*{\Hy@OutlineName}[4]{% + \@ifundefined{\HypDest@Prefix#2}{% + \HypDest@Org@OutlineName{#1}{#2}{#3}{#4}% + }{% + \pdfoutline goto num\csname\HypDest@Prefix#2\endcsname + count#3{#4}% + }% + }% + \fi + \let\HypDest@Org@@writetorep\@@writetorep + \renewcommand*{\@@writetorep}[5]{% + \begingroup + \edef\Hy@tempa{#5}% + \ifx\Hy@tempa\Hy@bookmarkstype + \HypDest@MarkUsed{#3}% + \fi + \endgroup + \HypDest@Org@@writetorep{#1}{#2}{#3}{#4}{#5}% + }% +} +\endinput +%% +%% End of file `hypdestopt.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/hypdoc.sty b/Master/texmf-dist/tex/latex/oberdiek/hypdoc.sty new file mode 100644 index 00000000000..2bcb1b5fd6a --- /dev/null +++ b/Master/texmf-dist/tex/latex/oberdiek/hypdoc.sty @@ -0,0 +1,495 @@ +%% +%% This is file `hypdoc.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% hypdoc.dtx (with options: `package') +%% +%% This is a generated file. +%% +%% Copyright (C) 2002, 2006 by Heiko Oberdiek +%% +%% 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 hypdoc.dtx +%% and the derived files +%% hypdoc.sty, hypdoc.pdf, hypdoc.ins, hypdoc.drv. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{hypdoc}% + [2006/06/02 v1.4 Hyper extensions for doc.sty (HO)] +\newif\ifHD@numbered +\DeclareOption{numbered}{\HD@numberedtrue} +\ProcessOptions*\relax + +\RequirePackage{doc} + +\ifx\numexpr\@undefined + \RequirePackage{calc} +\fi +\RequirePackage[% + hyperindex=false,% + pdfusetitle,% + colorlinks,% + pdfpagelabels,% +]{hyperref}[2002/05/09]% +\hypersetup{% + plainpages=false,% + bookmarksopen,% + bookmarksnumbered,% + bookmarksopenlevel=0,% + pdfstartview={FitBH \hypercalcbp{% + \paperheight-\topmargin-1in-\headheight-\headsep + }},% +} +\RequirePackage{thumbpdf} + +\newcounter{HD@unique} +\renewcommand{\theHD@unique}{% + \number\value{HD@unique}% +} + +\g@addto@macro\Hy@UseMaketitleInfos{% + \@ifundefined{fileinfo}{}{% + \ifx\@pdfsubject\@empty + \hypersetup{pdfsubject={\fileinfo}}% + \fi + }% +} + +\pdfstringdefDisableCommands{% + \let\thanks\@gobble + \let\footnote\@gobble + \def\cs#1{\textbackslash #1}% + \let\normalfont\@empty + \let\scshape\@empty + \def\and{and }% +} + +%%% Bookmarks + +\def\HD@sectionpatch{% + \ifHD@numbered + \HD@@sectionpatch{section}% + \HD@@sectionpatch{chapter}% + \else + \let\Hy@writebookmark\HD@disable@writebookmark + \fi +} +\def\HD@@sectionpatch#1{% + \expandafter\let\csname HDorg@@#1\expandafter\endcsname + \csname #1\endcsname + \@namedef{#1}{% + \@ifstar{\@nameuse{HDorg@@#1}}{\@nameuse{HDorg@@#1}}% + }% +} +\def\HD@disable@writebookmark#1#2#3#4#5{} + +\def\HD@guesstoclevel#1{% + \expandafter\HD@@guesstoclevel#1\section\HD@end +} +\def\HD@@guesstoclevel#1#2\HD@end{% + \@ifundefined{toclevel@\expandafter\@gobble\string#1\@empty}{% + 1% + }{% + \@nameuse{toclevel@\expandafter\@gobble\string#1\@empty}% + }% +} + +\let\HDorg@tableofcontents\tableofcontents +\def\tableofcontents{% + % As first section the table of contents shouldn't + % go into the toc itself. Also a number looks too funny then. + % Just a bookmark is enough in this case. + \begingroup + \@ifundefined{c@section}{% + \def\c@section{0}% + }{}% + \expandafter\endgroup + \ifcase\c@section + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@tableofcontents}] + {\contentsname}{toc\theHD@unique}% + \HDorg@tableofcontents + \else + \ifHD@numbered + \else + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@tableofcontents}] + {\contentsname}{toc\theHD@unique}% + \fi + \begingroup + \HD@sectionpatch + \HDorg@tableofcontents + \endgroup + \fi +} + +\let\HDorg@listoffigures\listoffigures +\def\listoffigures{% + \ifHD@numbered + \else + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@listoffigures}] + {\contentsname}{toc\theHd@unique}% + \fi + \begingroup + \HD@sectionpatch + \HDorg@listoffigures + \endgroup +} + +\let\HDorg@listoftables\listoftables +\def\listoftables{% + \ifHD@numbered + \else + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@listoftables}] + {\contentsname}{toc\theHD@unique}% + \fi + \begingroup + \HD@sectionpatch + \HDorg@listoftables + \endgroup +} + +\let\HDorg@thebibliography\thebibliography +\def\thebibliography{% + \ifHD@numbered + \else + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@thebibliography}] + {\@ifundefined{chapter}{\refname}{\bibname}}{bib\theHD@unique}% + \fi + \HD@sectionpatch + \HDorg@thebibliography +} + +\let\HDorg@theindex\theindex +\def\theindex{% + \let\HDorg@index@prologue\index@prologue + \let\HDorg@writebookmark\Hy@writebookmark + \HD@sectionpatch + \g@addto@macro\IndexParms{% + \ifHD@numbered + \else + \let\Hy@writebookmark\HDorg@writebookmark + \fi + \let\bfseries\HD@bfseries + }% + \edef\HD@toclevel@index{\HD@guesstoclevel{\index@prologue}}% + \begingroup + \count@=\HD@toclevel@index\relax + \advance\count@ by 1 % + \xdef\HD@toclevel@subindex{\the\count@}% + \endgroup + \def\index@prologue{% + \ifHD@numbered + \else + \begingroup + \stepcounter{HD@unique}% + \let\Hy@writebookmark\HDorg@writebookmark + \pdfbookmark[\HD@toclevel@index]% + {\indexname}{index\theHD@unique}% + \endgroup + \fi + \HDorg@index@prologue + }% + \HDorg@theindex +} +\let\HDorg@bfseries\bfseries +\def\HD@bfseries{\futurelet\HD@hfil\HD@@bfseries}% +\def\HD@@bfseries{% + \HDorg@bfseries + \ifx\HD@hfil\hfil + \expandafter\HD@@@bfseries + \fi +}% +\def\HD@@@bfseries\hfil#1\hfil{% + \ifx\\#1\\% + \else + \raisebox{\baselineskip}[0pt]{% + \kern-\HD@margin\relax + \pdfbookmark[\HD@toclevel@subindex]{#1}{HD.#1}% + \kern\HD@margin\relax + }% + \fi + \hfil#1\hfil +}% +\def\HD@margin{1mm} + +\let\HDorg@theglossary\theglossary +\def\theglossary{% + \let\HDorg@glossary@prologue\glossary@prologue + \let\HDorg@writebookmark\Hy@writebookmark + \HD@sectionpatch + \def\glossary@prologue{% + \ifHD@numbered + \else + \begingroup + \let\Hy@writebookmark\HDorg@writebookmark + \stepcounter{HD@unique}% + \pdfbookmark[\HD@guesstoclevel{\HDorg@glossary@prologue}] + {\glossaryname}{glossary\theHD@unique}% + \endgroup + \fi + \HDorg@glossary@prologue + }% + \HDorg@theglossary +} +\providecommand*{\glossaryname}{Change History} + +%%% Index stuff + +\newcounter{HD@hypercount} +\newlength{\HD@helplength} +\newif\ifHD@savedest +\HD@savedesttrue +\AtBeginDocument{% + \HD@savedest@init +} +\begingroup + \catcode`\^^M=\active +\@firstofone{\endgroup + \def\HD@savedest@init{% + \ifHD@savedest + \let\HDorg@tilde~% + \let~\HD@savedest@entry + \edef\HDorg@catcodeM{\the\catcode`\^^M}% + \catcode`\^^M=\active + \def^^M{}% + \InputIfFileExists{\jobname.hd}{}{}% + \let~\HDorg@tilde + \catcode`\^^M=\HDorg@catcodeM\relax + \newwrite\HD@savedest@out + \immediate\openout\HD@savedest@out=\jobname.hd\relax + \AtEndDocument{\immediate\closeout\HD@savedest@out}% + \else + \let\HD@savedest@add\@gobble + \fi + }% + \def\HD@savedest@entry#1^^M{% + \@namedef{HD.#1}{}% + }% +} +\def\HD@savedest@add#1{% + \immediate\write\HD@savedest@out{\string~#1}% +} + +\newif\ifHD@targetraise +\HD@targetraisetrue + +\def\HD@target{% + \ifHD@targetraise + \ifhmode + \settoheight{\HD@helplength}{[H]}% + \addtolength{\HD@helplength}{0.4ex}% + \raisebox{\HD@helplength}{% + \HD@maketarget + }% + \else + \HD@maketarget + \fi + \else + \HD@maketarget + \fi +} +\def\HD@maketarget{% + \stepcounter{HD@hypercount}% + \def\HD@next{% + \llap{\hypertarget{HD.\the\c@HD@hypercount}{}\,}% + }% + \ifHD@savedest + \expandafter\ifx\csname HD.\the\c@HD@hypercount\endcsname\@empty + \else + \let\HD@next\relax + \fi + \fi + \HD@next +} + +\g@addto@macro\CodelineIndex{% + \let\special@index\HD@codeline@wrindex +} +\g@addto@macro\PageIndex{% + \let\special@index\HD@page@wrindex +} + +\def\HD@codeline@wrindex#1{% + \begingroup + \let\HDorg@encapchar\encapchar + \def\encapchar##1\encapchar##2\@nil{% + \HDorg@encapchar + hdclindex{\the\c@HD@hypercount}{##1}% + }% + \codeline@wrindex{% + #1\encapchar\encapchar\@nil + }% + \endgroup +} +\def\HD@page@wrindex#1{% + \begingroup + \let\HDorg@encapchar\encapchar + \def\encapchar##1\encapchar##2\@nil{% + \HDorg@encapchar + hdpindex{##1}% + }% + \HDorg@index{#1\encapchar\encapchar\@nil}% + \endgroup +} + +\def\hdclindex#1#2#3{% + \csname\ifx\\#2\\relax\else#2\fi\endcsname{% + \hyperlink{HD.#1}{#3}% + \HD@savedest@add{#1}% + }% +} +\def\hdpindex#1#2{% + \csname\ifx\\#1\\relax\else#1\fi\endcsname{% + \hyperpage{#2}% + }% +} + +\let\HDorg@PrintDescribeMacro\PrintDescribeMacro +\renewcommand\PrintDescribeMacro[1]{% + \begingroup + \let\HDorg@MacroFont\MacroFont + \def\MacroFont{% + \HD@target + \HDorg@MacroFont + }% + \HDorg@PrintDescribeMacro{#1}% + \endgroup +} + +\let\HDorg@PrintMacroName\PrintMacroName +\renewcommand\PrintMacroName[1]{% + \begingroup + \let\HDorg@MacroFont\MacroFont + \def\MacroFont{% + \HD@target + \HDorg@MacroFont + }% + \HDorg@PrintMacroName{#1}% + \endgroup +} + +\let\HDorg@theCodelineNo\theCodelineNo +\renewcommand*\theCodelineNo{% + \settowidth{\HD@helplength}{\HDorg@theCodelineNo\ }% + \ifdim\HD@helplength<\MacroIndent + \addtolength{\HD@helplength}{-\MacroIndent}% + \llap{% + \begingroup\HD@target\endgroup + \hspace*{-\HD@helplength}% + }% + \else + \HD@target + \fi + \HDorg@theCodelineNo +} + +\AtBeginDocument{% + \let\HDorg@index\index +} + +\let\HDorg@SpecialUsageIndex\SpecialUsageIndex +\renewcommand*\SpecialUsageIndex[1]{% + \@bsphack + \begingroup + \HD@target + \let\index\HDorg@index + \let\HDorg@encapchar\encapchar + \edef\encapchar usage{% + \HDorg@encapchar hdclindex{\the\c@HD@hypercount}{usage}% + }% + \HDorg@SpecialUsageIndex{#1}% + \endgroup + \@esphack +} + +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname autoindex\endcsname\relax +\else + \let\HDorg@autoindex\autoindex + \renewcommand*\autoindex[1]{% + \@bsphack + \begingroup + \HD@target + \let\index\HDorg@index + \let\HDorg@encapchar\encapchar + \edef\encapchar usage{% + \HDorg@encapchar hdclindex{\the\c@HD@hypercount}{usage}% + }% + \HDorg@autoindex{#1}% + \endgroup + \@esphack + } +\fi + +\let\HDorg@SpecialEnvIndex\SpecialEnvIndex +\renewcommand*\SpecialEnvIndex[1]{% + \@bsphack + \begingroup + \HD@target + \let\HDorg@encapchar\encapchar + \edef\encapchar usage{% + \HDorg@encapchar hdclindex{\the\c@HD@hypercount}{usage}% + }% + \HDorg@SpecialEnvIndex{#1}% + \endgroup + \@esphack +} + +\let\HDorg@SortIndex\SortIndex +\renewcommand*{\SortIndex}[2]{% + \@bsphack + \begingroup + \let\index\HD@page@wrindex + \HDorg@SortIndex{#1}{#2}% + \endgroup + \@esphack +} + +%%% glossary stuff + +\let\HDorg@wrglossary\@wrglossary +\def\@wrglossary#1{% + \let\HDorg@encapchar\encapchar + \def\encapchar##1\encapchar##2\@nil{% + \HDorg@encapchar + hdpindex{##1}% + }% + \HDorg@wrglossary{#1\encapchar\encapchar\@nil}% +} + +%%% \MacroIndent automatically calculated + +\AtEndDocument{% + \if@filesw + \immediate\write\@auxout{% + \noexpand\HD@SetMacroIndent{\number\value{CodelineNo}}% + }% + \fi +} +\def\HD@SetMacroIndent#1{% + \begingroup + \value{CodelineNo}=#1\relax + \settowidth{\MacroIndent}{\HDorg@theCodelineNo\ }% + \global\MacroIndent\MacroIndent + \endgroup +} +\endinput +%% +%% End of file `hypdoc.sty'. diff --git a/Master/texmf-dist/tex/latex/oberdiek/ifdraft.sty b/Master/texmf-dist/tex/latex/oberdiek/ifdraft.sty index 8443447372c..19b6ce7a383 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/ifdraft.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/ifdraft.sty @@ -1,87 +1,35 @@ -% File: ifdraft.sty -% Version: 2005/10/05 v1.1 -% Author: Heiko Oberdiek -% Email: -% -% Function: Switch for option draft. -% -% Copyright: Copyright (C) 1999, 2005 Heiko Oberdiek. -% -% 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 2003/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% This Current Maintainer of this work is Heiko Oberdiek. -% -% Use: \usepackage{ifdraft} -% \ifdraft{}{} -% \ifoptiondraft{