From 4496f7ad4bfd0f0ac5de285d257f704a4666a496 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 24 Nov 2019 21:34:37 +0000 Subject: attachfile2 splt from oberdiek (24nov19) git-svn-id: svn://tug.org/texlive/trunk@52909 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/attachfile2/atfi-dvipdfmx.def | 218 ++++++ .../tex/latex/attachfile2/atfi-dvips.def | 504 +++++++++++++ .../tex/latex/attachfile2/atfi-luatex.def | 170 +++++ .../tex/latex/attachfile2/atfi-pdftex.def | 170 +++++ .../tex/latex/attachfile2/attachfile2.sty | 819 +++++++++++++++++++++ 5 files changed, 1881 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/attachfile2/atfi-dvipdfmx.def create mode 100644 Master/texmf-dist/tex/latex/attachfile2/atfi-dvips.def create mode 100644 Master/texmf-dist/tex/latex/attachfile2/atfi-luatex.def create mode 100644 Master/texmf-dist/tex/latex/attachfile2/atfi-pdftex.def create mode 100644 Master/texmf-dist/tex/latex/attachfile2/attachfile2.sty (limited to 'Master/texmf-dist/tex/latex/attachfile2') diff --git a/Master/texmf-dist/tex/latex/attachfile2/atfi-dvipdfmx.def b/Master/texmf-dist/tex/latex/attachfile2/atfi-dvipdfmx.def new file mode 100644 index 00000000000..61f8220bb1a --- /dev/null +++ b/Master/texmf-dist/tex/latex/attachfile2/atfi-dvipdfmx.def @@ -0,0 +1,218 @@ +%% +%% This is file `atfi-dvipdfmx.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `dvipdfmx') +%% +%% This is a generated file. +%% +%% Project: attachfile2 +%% Version: 2019/11/24 v2.10 +%% +%% Copyright (C) +%% 2005-2010, 2012 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/attachfile2/issues +%% +%% +%% This work consists of the main source file attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, atfi-luatex.def +%% pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfi-dvipdfmx.def}% + [2019/11/24 v2.10 attachfile2 driver for dvipdfmx/XeTeX (HO)]% +\def\atfi@special#1{% + \special{pdf:#1}% +} +\def\atfi@literal#1{% + \atfi@special{content #1}% +} +\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@SETCMYKCOLORSTROKE{K } +\def\atfi@SETCMYKCOLORFILL{k } +\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 } +\newcounter{atfi@obj} +\renewcommand*{\theatfi@obj}{% + @atfi_obj_\number\c@atfi@obj +} +\define@key{AtFi@file}{Size}{% + \edef\atfi@params{\atfi@params/Size #1}% +} +\def\atfi@embedfile#1{% + \ltx@IfUndefined{atfi@fileobj@#1}{% + \stepcounter{atfi@obj}% + \begingroup + \let\atfi@params\ltx@empty + \expandafter\let\expandafter\atfi@temp + \csname atfi@file@#1\endcsname + \ifx\atfi@temp\ltx@empty + \let\atfi@temp\relax + \fi + \ifx\atfi@temp\relax + \atfi@pdftexdata{#1}% + \else + \edef\x{% + \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% + }% + \x + \fi + \ifx\atfi@params\ltx@empty + \else + \edef\atfi@params{/Params<<\atfi@params>>}% + \fi + \edef\atfi@FILE{#1}% + \filename@parse\atfi@FILE + \ifx\filename@area\ltx@empty + \edef\atfi@FILE{./\atfi@FILE}% + \fi + \EdefEscapeString\atfi@FILE{\atfi@FILE}% + \atfi@special{fstream % + \theatfi@obj + (\atfi@FILE)% + <<% + /Type/EmbeddedFile% + \atfi@mimetype + \atfi@params + >>% + }% + \atfi@special{close \theatfi@obj}% + \expandafter + \xdef\csname atfi@fileobj@#1\endcsname{\theatfi@obj}% + \endgroup + }{% + % file already embedded + }% +} +\def\atfi@xform{% + \stepcounter{atfi@obj}% + \smash{% + \rlap{% + \atfi@special{bxobj \theatfi@obj\space + width \the\wd\atfi@appearancebox\space + height \the\ht\atfi@appearancebox\space + depth \the\dp\atfi@appearancebox + }% + \usebox\atfi@appearancebox + \atfi@special{exobj}% + }% + }% + \edef\atfi@appearanceobj{\theatfi@obj}% +} +\let\atfi@xform@icon\atfi@xform +\def\atfi@refxform#1{% + \leavevmode + \atfi@special{uxobj #1}% +} +\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\ltx@empty + \fi + \ltx@IfUndefined{atfi@fsobj@#1}{% + \begingroup + \ifxetex + \let\atfi@temp\Hy@Warning + \let\Hy@Warning\ltx@gobble + \fi + \hypersetup{unicode=false}% + \ifxetex + \let\Hy@Warning\atfi@temp + \fi + \atfi@pdfstringdef\atfi@file{#1}% + \stepcounter{atfi@obj}% + \atfi@special{obj \theatfi@obj <<% + /Type/Filespec% + /F(\atfi@file)% + \ifx\atfi@ucfilespec\ltx@empty + \else + /UF(\atfi@ucfilespec)% + \fi + /EF<<% + /F \@nameuse{atfi@fileobj@#1}% + >>% + >>% + }% + \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% + \theatfi@obj + }% + \endgroup + }{% + }% + \begingroup + \dimen@=\atfi@scale\atfi@appearancewidth + \edef\atfi@rule{width \the\dimen@}% + \dimen@=\atfi@scale\atfi@appearanceheight + \edef\atfi@rule{\atfi@rule\space height \the\dimen@}% + \dimen@=\atfi@scale\atfi@appearancedepth + \edef\atfi@rule{\atfi@rule\space depth \the\dimen@}% + \atfi@special{ann \atfi@rule + <<% + /Subtype/FileAttachment% + \atfi@icon + \atfi@color@annot + \atfi@author + \atfi@date + \atfi@annotname + \atfi@description + \atfi@subject + \atfi@appearance@dict + /F \theatfi@flags + /FS \@nameuse{atfi@fsobj@#1}% + >>% + }% + \endgroup + \rule{0pt}{\atfi@appearanceheight}% + \rule[-\atfi@appearancedepth]{0pt}{\atfi@appearancedepth}% + \rule{\atfi@appearancewidth}{0pt}% +} +\endinput +%% +%% End of file `atfi-dvipdfmx.def'. diff --git a/Master/texmf-dist/tex/latex/attachfile2/atfi-dvips.def b/Master/texmf-dist/tex/latex/attachfile2/atfi-dvips.def new file mode 100644 index 00000000000..23b3c63376a --- /dev/null +++ b/Master/texmf-dist/tex/latex/attachfile2/atfi-dvips.def @@ -0,0 +1,504 @@ +%% +%% This is file `atfi-dvips.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `dvips') +%% +%% This is a generated file. +%% +%% Project: attachfile2 +%% Version: 2019/11/24 v2.10 +%% +%% Copyright (C) +%% 2005-2010, 2012 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/attachfile2/issues +%% +%% +%% This work consists of the main source file attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, atfi-luatex.def +%% pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfi-dvips.def}% + [2019/11/24 v2.10 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@SETCMYKCOLORSTROKE{setcmykcolor } +\def\atfi@SETCMYKCOLORFILL{setcmykcolor } +\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{% + \ltx@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\ltx@empty + \expandafter\let\expandafter\atfi@temp + \csname atfi@file@#1\endcsname + \ifx\atfi@temp\ltx@empty + \let\atfi@temp\relax + \fi + \ifx\atfi@temp\relax + \atfi@pdftexdata{#1}% + \else + \edef\x{% + \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% + }% + \x + \fi + \atfi@literal{% + /atfi_filename(\atfi@psfilename)def % + atfi_filename status% + {% + /atfi_created exch def% + /atfi_referenced exch def% + /atfi_size exch def % + pop % + [% + /_objdef \theatfi@obj + /type/stream% + /OBJ pdfmark% + [% + \theatfi@obj + <<% + /Type/EmbeddedFile% + \atfi@mimetype + /Params% + <<% + \atfi@params + % + /Size atfi_size% + % + /product where% + {% + pop % + product (Ghostscript) search% + {% + pop pop pop % + \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% + } if % + \ifatfi@checksum + \else + atfi_filename atfi_calc_checksum% + \fi + >>% + >>% + /PUT pdfmark% + [% + \theatfi@obj + atfi_filename (r) file% + /PUT pdfmark% + [% + \theatfi@obj + /CLOSE pdfmark% + }{% + } ifelse% + }% + \endgroup + }{% + }% +} +\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 + \setbox\ltx@zero=\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 + \dp\ltx@zero=\z@ + \ht\ltx@zero=\z@ + \wd\ltx@zero=\z@ + \mbox{\usebox\ltx@zero}% + \endgroup +} +\def\atfi@refxform#1{% + \raisebox{-\atfi@appearancedepth}{% + \atfi@literal{% + gsave % + currentpoint translate % + Resolution 72 div VResolution neg 72 div scale% + [#1 /SP pdfmark % hash-ok + 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\ltx@empty + \fi + \ltx@IfUndefined{atfi@fsobj@#1}{% + \stepcounter{atfi@obj}% + \expandafter + \xdef\csname atfi@fsobj@#1\endcsname{\theatfi@obj}% + \begingroup + \hypersetup{unicode=false}% + \atfi@pdfstringdef\atfi@file{#1}% + \atfi@literal{% + [% + /_objdef \theatfi@obj + /type/dict% + /OBJ pdfmark% + [% + \theatfi@obj + <<% + /Type/Filespec% + /F(\atfi@file)% + \ifx\atfi@ucfilespec\ltx@empty + \else + /UF(\atfi@ucfilespec)% + \fi + /EF<<% + /F \csname atfi@fileobj@#1\endcsname + >>% + >>% + /PUT pdfmark% + }% + \endgroup + }{% + }% + \atfi@literal{% + [% + /Subtype/FileAttachment% + \atfi@icon + \atfi@color@annot + \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 `atfi-dvips.def'. diff --git a/Master/texmf-dist/tex/latex/attachfile2/atfi-luatex.def b/Master/texmf-dist/tex/latex/attachfile2/atfi-luatex.def new file mode 100644 index 00000000000..cd0e1602d9c --- /dev/null +++ b/Master/texmf-dist/tex/latex/attachfile2/atfi-luatex.def @@ -0,0 +1,170 @@ +%% +%% This is file `atfi-luatex.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `luatex') +%% +%% This is a generated file. +%% +%% Project: attachfile2 +%% Version: 2019/11/24 v2.10 +%% +%% Copyright (C) +%% 2005-2010, 2012 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/attachfile2/issues +%% +%% +%% This work consists of the main source file attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, atfi-luatex.def +%% pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfi-luatex.def}% + [2019/11/24 v2.10 attachfile2 driver for luaTeX (HO)]% +\protected\def\atfi@literal {\pdfextension literal} +\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@SETCMYKCOLORSTROKE{K } +\def\atfi@SETCMYKCOLORFILL{k } +\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{% + \ltx@IfUndefined{atfi@fileobj@#1}{% + \begingroup + \let\atfi@params\ltx@empty + \expandafter\let\expandafter\atfi@temp + \csname atfi@file@#1\endcsname + \ifx\atfi@temp\ltx@empty + \let\atfi@temp\relax + \fi + \ifx\atfi@temp\relax + \atfi@pdftexdata{#1}% + \else + \edef\x{% + \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% + }% + \x + \fi + \ifx\atfi@params\ltx@empty + \else + \edef\atfi@params{/Params<<\atfi@params>>}% + \fi + \immediate\pdfextension obj stream attr {% + /Type/EmbeddedFile% + \atfi@mimetype + \atfi@params + } file {#1}% + \expandafter + \xdef\csname atfi@fileobj@#1\endcsname{\the\numexpr\pdffeedback lastobj\relax}% + \endgroup + }{% + % file already embedded + }% +} +\def\atfi@xform{% + \immediate\saveboxresource\atfi@appearancebox + \edef\atfi@appearanceobj{\the\lastsavedboxresourceindex}% +} +\let\atfi@xform@icon\atfi@xform +\def\atfi@refxform#1{% + \useboxresource#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\ltx@empty + \fi + \ltx@IfUndefined{atfi@fsobj@#1}{% + \begingroup + \hypersetup{unicode=false}% + \atfi@pdfstringdef\atfi@file{#1}% + \immediate\pdfextension obj{% + <<% + /Type/Filespec% + /F(\atfi@file)% + \ifx\atfi@ucfilespec\ltx@empty + \else + /UF(\atfi@ucfilespec)% + \fi + /EF<<% + /F \@nameuse{atfi@fileobj@#1} 0 R% + >>% + >>% + }% + \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% + \the\numexpr\pdffeedback lastobj\relax + }% + \endgroup + }{% + }% + \pdfextension annot width \atfi@scale\atfi@appearancewidth + height \atfi@scale\atfi@appearanceheight + depth \atfi@scale\atfi@appearancedepth {% + /Subtype/FileAttachment% + \atfi@icon + \atfi@color@annot + \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 `atfi-luatex.def'. diff --git a/Master/texmf-dist/tex/latex/attachfile2/atfi-pdftex.def b/Master/texmf-dist/tex/latex/attachfile2/atfi-pdftex.def new file mode 100644 index 00000000000..8a1d88be00f --- /dev/null +++ b/Master/texmf-dist/tex/latex/attachfile2/atfi-pdftex.def @@ -0,0 +1,170 @@ +%% +%% This is file `atfi-pdftex.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% attachfile2.dtx (with options: `pdftex') +%% +%% This is a generated file. +%% +%% Project: attachfile2 +%% Version: 2019/11/24 v2.10 +%% +%% Copyright (C) +%% 2005-2010, 2012 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/attachfile2/issues +%% +%% +%% This work consists of the main source file attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, atfi-luatex.def +%% pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atfi-pdftex.def}% + [2019/11/24 v2.10 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@SETCMYKCOLORSTROKE{K } +\def\atfi@SETCMYKCOLORFILL{k } +\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{% + \ltx@IfUndefined{atfi@fileobj@#1}{% + \begingroup + \let\atfi@params\ltx@empty + \expandafter\let\expandafter\atfi@temp + \csname atfi@file@#1\endcsname + \ifx\atfi@temp\ltx@empty + \let\atfi@temp\relax + \fi + \ifx\atfi@temp\relax + \atfi@pdftexdata{#1}% + \else + \edef\x{% + \noexpand\setkeys{AtFi@file}{\@nameuse{atfi@file@#1}}% + }% + \x + \fi + \ifx\atfi@params\ltx@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\ltx@empty + \fi + \ltx@IfUndefined{atfi@fsobj@#1}{% + \begingroup + \hypersetup{unicode=false}% + \atfi@pdfstringdef\atfi@file{#1}% + \immediate\pdfobj{% + <<% + /Type/Filespec% + /F(\atfi@file)% + \ifx\atfi@ucfilespec\ltx@empty + \else + /UF(\atfi@ucfilespec)% + \fi + /EF<<% + /F \@nameuse{atfi@fileobj@#1} 0 R% + >>% + >>% + }% + \expandafter\xdef\csname atfi@fsobj@#1\endcsname{% + \the\pdflastobj + }% + \endgroup + }{% + }% + \pdfannot width \atfi@scale\atfi@appearancewidth + height \atfi@scale\atfi@appearanceheight + depth \atfi@scale\atfi@appearancedepth {% + /Subtype/FileAttachment% + \atfi@icon + \atfi@color@annot + \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 `atfi-pdftex.def'. diff --git a/Master/texmf-dist/tex/latex/attachfile2/attachfile2.sty b/Master/texmf-dist/tex/latex/attachfile2/attachfile2.sty new file mode 100644 index 00000000000..93502eb2f25 --- /dev/null +++ b/Master/texmf-dist/tex/latex/attachfile2/attachfile2.sty @@ -0,0 +1,819 @@ +%% +%% 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. +%% +%% Project: attachfile2 +%% Version: 2019/11/24 v2.10 +%% +%% Copyright (C) +%% 2005-2010, 2012 Heiko Oberdiek +%% 2016-2019 Oberdiek Package Support Group +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3c of this license or (at your option) any later +%% version. This version of this license is in +%% https://www.latex-project.org/lppl/lppl-1-3c.txt +%% and the latest version of this license is in +%% https://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2005/12/01 or later. +%% +%% This work has the LPPL maintenance status "maintained". +%% +%% The Current Maintainers of this work are +%% Heiko Oberdiek and the Oberdiek Package Support Group +%% https://github.com/ho-tex/attachfile2/issues +%% +%% +%% This work consists of the main source file attachfile2.dtx +%% and the derived files +%% attachfile2.sty, attachfile2.pdf, attachfile2.ins, attachfile2.drv, +%% atfi-dvips.def, atfi-pdftex.def, atfi-dvipdfmx.def, atfi-luatex.def +%% pdfatfi.pl. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{attachfile2}% + [2019/11/24 v2.10 Attach files into PDF (HO)]% +\RequirePackage{iftex}[2019/11/07] +\RequirePackage{keyval} +\RequirePackage{color} +\RequirePackage{infwarerr}[2010/04/08] +\RequirePackage{ltxcmds}[2010/04/26] +\RequirePackage{kvoptions}[2009/07/21] +\RequirePackage{pdftexcmds}[2010/04/01] +\RequirePackage{pdfescape}[2007/11/11] +\RequirePackage{hyperref} +\RequirePackage{hycolor}[2008/07/29] +\ltx@IfUndefined{pdfmatch}{% + \def\atfi@Match#1#2#3#4#5{}% +}{% + \def\atfi@Match#1#2#3{% + \begingroup + \edef\^{\ltx@backslashchar\string^}% + \edef\.{\ltx@backslashchar.}% + \let\#\ltx@hashchar + \edef\[{\ltx@backslashchar[}% ]] + \edef\${\ltx@backslashchar$}% + \let\%\ltx@percentchar + \edef\&{\string&}% + \edef\({\ltx@backslashchar(}% + \edef\){\ltx@backslashchar)}% + \edef\|{\ltx@backslashchar|}% + \edef\*{\ltx@backslashchar*}% + \edef\+{\ltx@backslashchar+}% + \edef\?{\ltx@backslashchar?}% + \edef\{{\ltx@backslashchar\ltx@leftbracechar}% + \edef\}{\ltx@rightbracechar}% + \edef\\{\ltx@backslashchar\ltx@backslashchar}% + \edef\~{\string~}% + \ifcase\pdfmatch#3{#2}{#1} % + \endgroup + \expandafter\ltx@secondoftwo + \or + \endgroup + \expandafter\ltx@firstoftwo + \else + \atfi@Warning{% + Internal error: Wrong pattern!\MessageBreak + --> #2 <--\MessageBreak + Pattern check ignored% + }% + \endgroup + \expandafter\ltx@firstoftwo + \fi + }% + \def\atfi@PatToken{% + [% + -% first character + !% + \#$\%\&'% + \*\+\.% + 0-9% + A-Z% + \^_`% + a-z% + \{\}\|\~% + ]+% + }% + \begingroup + \lccode64=13 % @ + \lowercase{\endgroup + \def\atfi@CR{@}% + }% + \def\atfi@PatQuotedString{% + "% + ([^"\\\atfi@CR]|\\.)*% + "% + }% + \ltx@ifpackagelater{ltxcmds}{2010/09/11}{}{% + \begingroup + \lccode`0=`\{\relax + \lowercase{\endgroup + \def\ltx@leftbracechar{0}% + }% + \begingroup + \lccode`0=`\}\relax + \lowercase{\endgroup + \def\ltx@rightbracechar{0}% + }% + }% +} +\def\atfi@Warning{\PackageWarning{attachfile2}} +\SetupKeyvalOptions{% + family=AtFi,% + prefix=atfi@% +} +\def\atfi@setup{\setkeys{AtFi}} +\DeclareBoolOption{draft} +\DeclareComplementaryOption{final}{draft} +\def\atfi@mimetype{} +\define@key{AtFi}{mimetype}{% + \edef\atfi@mimetype{#1}% + \ifx\atfi@mimetype\ltx@empty + \else + \atfi@Match\atfi@mimetype{% + ^(application|audio|image|model|text|video|x-\atfi@PatToken)% + /% + ([a-z\-\+_\.0-9]+)% + (; ?\atfi@PatToken=(\atfi@PatToken|\atfi@PatQuotedString))*$% + }{icase}{}{% + \atfi@Warning{% + Invalid value `\atfi@mimetype'\MessageBreak + of option `mimetype'.\MessageBreak + Value is discarded% + }% + \let\atfi@mimetype\ltx@empty + }% + \fi + \ifx\atfi@mimetype\ltx@empty + \else + \EdefEscapeName\atfi@mimetype{\atfi@mimetype}% + \edef\atfi@mimetype{/Subtype/\atfi@mimetype}% + \fi +} +\define@key{AtFi}{icon}{% + \def\atfi@icon{/Name/#1}% + \def\atfi@icon@icon{#1}% +} +\atfi@setup{icon=PushPin} +\define@key{AtFi}{color}{% + \HyColor@AttachfileColor{#1}% + \atfi@color@tex\atfi@color@inline\atfi@color@annot + {attachfile2}{color}% +} +\atfi@setup{color=1 0.9255 0.7765} +\def\atfi@pad@ii#1{% + \ifnum#1>9 % + \number#1% + \else + 0\number#1% + \fi% +} +\let\atfi@timezone\ltx@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}{% + \EdefEscapeString\atfi@date{#1}% + \edef\atfi@date{/M(\atfi@date)}% +} +\DeclareRobustCommand{\atfi@pdfstringdef}[2]{% + \pdfstringdef\atfi@temp@string{#2}% + \edef#1{\atfi@temp@string}% +} +\def\atfi@NoValue{\NoValue} +\def\atfi@DefNoValueName#1#2#3{% + \def#1{#3}% + \ifx#1\atfi@NoValue + \let#1\ltx@empty + \else + \atfi@pdfstringdef#1{#1}% + \edef#1{/#2(#1)}% + \fi +} +\let\atfi@annotname\ltx@empty +\define@key{AtFi}{annotname}[\NoValue]{% + \atfi@DefNoValueName\atfi@annotname{NM}{#1}% +} +\def\atfi@author{} +\define@key{AtFi}{author}[\NoValue]{% + \atfi@DefNoValueName\atfi@author{T}{#1}% +} +\def\atfi@description{} +\define@key{AtFi}{description}[\NoValue]{% + \atfi@DefNoValueName\atfi@description{Contents}{#1}% +} +\def\atfi@subject{} +\define@key{AtFi}{subject}[\NoValue]{% + \atfi@DefNoValueName\atfi@subject{Subj}{#1}% +} +\DeclareBoolOption[true]{print} +\DeclareBoolOption[true]{zoom} +\DeclareBoolOption[true]{appearance} +\DeclareStringOption[1]{scale} +\def\atfi@ucfilespec{} +\define@key{AtFi}{ucfilespec}[1]{% + \def\atfi@ucfilespec{#1}% + \ifx\atfi@ucfilespec\ltx@empty + \else + \atfi@pdfstringdef\atfi@ucfilespec{#1}% + \fi +} +\DeclareBoolOption{nofiles} +\let\atfi@driver\ltx@empty +\def\atfi@driver@pdftex{pdftex} +\def\atfi@driver@luatex{luatex} +\def\atfi@driver@dvips{dvips} +\def\atfi@driver@dvipdfmx{dvipdfmx} +\DeclareVoidOption{pdftex}{% + \ifpdf + \let\atfi@driver\atfi@driver@pdftex + \else + \let\atfi@driver\ltx@empty + \PackageError{attachfile2}{% + Wrong driver option `pdftex',\MessageBreak + because pdfTeX in PDF mode is not detected% + }\@ehc + \fi +} +\DeclareVoidOption{luatex}{% + \let\atfi@driver\atfi@driver@luatex +} +\DeclareVoidOption{dvips}{% + \let\atfi@driver\atfi@driver@dvips +} +\DeclareVoidOption{dvipdfmx}{% + \let\atfi@driver\atfi@driver@dvipdfmx +} +\DeclareVoidOption{xetex}{% + \let\atfi@driver\atfi@driver@dvipdfmx +} +\DeclareStringOption{driverfallback} +\DeclareRobustCommand{\attachfilesetup}[1]{\setkeys{AtFi}{#1}} +\DeclareLocalOptions{% + annotname,% + appearance,% + author,% + color,% + date,% + description,% + icon,% + mimetype,% + nofiles,% + print,% + scale,% + subject,% + timezone,% + ucfilespec,% + zoom,% +} +\InputIfFileExists{attachfile.cfg}{}{} +\ProcessKeyvalOptions* +\def\atfi@DisableOption{% + \DisableKeyvalOption[action=error,package=attachfile2]{AtFi}% +} +\ifpdf + \ifluatex + \let\atfi@driver\atfi@driver@luatex + \else + \let\atfi@driver\atfi@driver@pdftex + \fi +\else + \ifxetex + \let\atfi@driver\atfi@driver@dvipdfmx + \else + \ifx\atfi@driver\ltx@empty + \ifx\atfi@driverfallback\ltx@empty + \else + \expandafter\let\expandafter\atfi@driver + \csname atfi@driver@\atfi@driverfallback\endcsname + \ifx\atfi@driver\atfi@driver@dvips + \else + \ifx\atfi@driver\atfi@driver@dvipdfmx + \else + \let\atfi@driver\ltx@empty + \PackageWarningNoLine{attachfile2}{% + Option `driverfallback' with unsupported\MessageBreak + DVI driver (\atfi@driverfallback)% + }% + \fi + \fi + \fi + \ifx\atfi@driver\ltx@empty + \PackageWarningNoLine{attachfile2}{% + Driver is not specified,\MessageBreak + enforce draft settings% + }% + \atfi@drafttrue + \fi + \fi + \fi +\fi +\atfi@DisableOption{pdftex} +\atfi@DisableOption{dvips} +\atfi@DisableOption{dvipdfmx} +\atfi@DisableOption{xetex} +\atfi@DisableOption{driverfallback} +\DeclareRobustCommand{\notextattachfile}[2][]{% + \begingroup + \atfi@setup{#1}% + \ifatfi@print + \leavevmode + \begingroup + \HyColor@UseColor\atfi@color@tex + #2\strut + \endgroup + \else + \sbox\ltx@zero{#2\strut}% + \makebox[\wd0]{}% + \fi + \endgroup +} +\atfi@DisableOption{draft}% +\atfi@DisableOption{final}% +\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@inline{FILL}% + 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@inline{STROKE}% + 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@inline{FILL}% + }{% + 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@inline{FILL}% + }{% + 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 +} +\def\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][]{% + \EdefUnescapeHex\atfi@filename{#2}% + \ifx\atfi@filename\ltx@empty + \PackageError{attachfile2}{Empty file name}\@ehc + \else + \@namedef{atfi@file@\atfi@filename}{#1}% + \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}{CreationDateTZ}{% + \ifatfi@creationdate + \else + \atfi@creationdatetrue + \edef\atfi@params{% + \atfi@params + /CreationDate(#1)% + }% + \fi +} +\define@key{AtFi@file}{CreationDate}{% + \ifatfi@creationdate + \else + \atfi@creationdatetrue + \edef\atfi@params{% + \atfi@params + /CreationDate(#1\atfi@timezone)% + }% + \fi +} +\newif\ifatfi@moddate +\define@key{AtFi@file}{ModDateTZ}{% + \ifatfi@moddate + \else + \atfi@moddatetrue + \edef\atfi@params{% + \atfi@params + /ModDate(#1)% + }% + \fi +} +\define@key{AtFi@file}{ModDate}{% + \ifatfi@moddate + \else + \atfi@moddatetrue + \edef\atfi@params{% + \atfi@params + /ModDate(D:#1\atfi@timezone)% + }% + \fi +} +\let\atfi@temp\ltx@one +\ltx@IfUndefined{pdf@filesize}{% + \let\atfi@temp\ltx@zero +}{} +\ltx@IfUndefined{pdf@filemoddate}{% + \let\atfi@temp\ltx@zero +}{} +\ltx@IfUndefined{pdf@filemdfivesum}{% + \let\atfi@temp\ltx@zero +}{} +\ifcase\atfi@temp + \let\atfi@pdftexdata\ltx@gobble +\or + \def\atfi@pdftexdata#1{% + \edef\atfi@temp{\pdf@filesize{#1}}% + \ifx\atfi@temp\ltx@empty + \else + \setkeys{AtFi@file}{Size=\atfi@temp}% + \edef\atfi@temp{\pdf@filemoddate{#1}}% + \ifx\atfi@temp\ltx@empty + \else + \setkeys{AtFi@file}{ModDateTZ=\atfi@temp}% + \fi + \edef\atfi@temp{\pdf@filemdfivesum{#1}}% + \ifx\atfi@temp\ltx@empty + \else + \setkeys{AtFi@file}{CheckSum=\atfi@temp}% + \fi + \fi + }% +\fi +\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\ltx@gobble +\else + \newwrite\atfi@stream + \immediate\openout\atfi@stream=\jobname.atfi\relax + \immediate\write\atfi@stream{% + \string\attachfile@timezone{\atfi@timezone}% + }% + \def\atfi@writefile#1{% + \begingroup + \EdefEscapeHex\atfi@temp{#1}% + \immediate\write\atfi@stream{% + \string\attachfile@file[% + \ltx@ifundefined{atfi@file@#1}{}{\@nameuse{atfi@file@#1}}% + ]{\atfi@temp}% + }% + \endgroup + }% +\fi +\atfi@DisableOption{nofiles} +\def\atfi@attachfile#1#2{% + \ltx@IfUndefined{atfi@fileobj@#2}{% + \atfi@writefile{#2}% + }{% + % don't need duplicates + }% + \atfi@setup{#1}% + \atfi@embedfile{#2}% + \atfi@set@appearance@icon + \atfi@flags@to@int + \atfi@insert@file@annot{#2}% + \endgroup +} +\newlength{\atfi@appearancewidth} +\newlength{\atfi@appearanceheight} +\newlength{\atfi@appearancedepth} +\newsavebox{\atfi@appearancebox} +\def\atfi@set@appearance@icon{% + \ltx@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{% + \ltx@IfUndefined{atfi@fileobj@#2}{% + \atfi@writefile{#2}% + }{% + % don't need duplicates + }% + \atfi@setup{#1}% + \atfi@embedfile{#2}% + \atfi@set@appearance{% + \leavevmode + \begingroup + \HyColor@UseColor\atfi@color@tex + #3\strut + \endgroup + }% + \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 + \atfi@setup{#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'. -- cgit v1.2.3