summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/incgraph
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-10-20 21:16:12 +0000
committerKarl Berry <karl@freefriends.org>2021-10-20 21:16:12 +0000
commit94c93aab885d39a26d41dbfff06d9d33a0f69c81 (patch)
tree6b8bc1c21ae49029563871b2be55ba17631fe685 /Master/texmf-dist/tex/latex/incgraph
parent6d535a56ce6233ff32ceb654cc7bdf0dea37b663 (diff)
incgraph (20oct21)
git-svn-id: svn://tug.org/texlive/trunk@60810 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/incgraph')
-rw-r--r--Master/texmf-dist/tex/latex/incgraph/incgraph.sty492
1 files changed, 359 insertions, 133 deletions
diff --git a/Master/texmf-dist/tex/latex/incgraph/incgraph.sty b/Master/texmf-dist/tex/latex/incgraph/incgraph.sty
index 09bde04275d..43a2aac9a32 100644
--- a/Master/texmf-dist/tex/latex/incgraph/incgraph.sty
+++ b/Master/texmf-dist/tex/latex/incgraph/incgraph.sty
@@ -1,8 +1,8 @@
-%% The LaTeX package incgraph - version 1.12 (2015/03/12)
+%% The LaTeX package incgraph - version 1.2.0 (2021/10/20)
%% incgraph.sty: Graphics inclusion page
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2012-2015 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
+%% Copyright (c) 2012-2021 by Prof. Dr. Dr. Thomas F. Sturm <thomas dot sturm at unibw dot de>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -18,7 +18,7 @@
%% This work consists of all files listed in README
%%
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{incgraph}[2015/03/12 version 1.12 LaTeX special graphics inclusion]
+\ProvidesPackage{incgraph}[2021/10/20 version 1.2.0 LaTeX special graphics inclusion]
\DeclareOption{pgf}{\def\igrreq@pgf{\RequirePackage{pgf}[2008/01/15]\RequirePackage{pgffor}}}%
\DeclareOption{nopgf}{\def\igrreq@pgf{}}%
@@ -44,9 +44,82 @@
\newdimen\igr@length
\newcounter{igrtarget}
+\ExplSyntaxOn
+
+\sys_if_engine_pdftex:TF
+ {
+ \NewDocumentCommand \igrGetPageSize {}
+ {
+ \cs_gset_nopar:Npx \igrPageWidth { \the\pdfpagewidth }
+ \cs_gset_nopar:Npx \igrPageHeight { \the\pdfpageheight }
+ }
+ \NewDocumentCommand \igrSetPageSize { m m }
+ {
+ \pdfpagewidth #1
+ \pdfpageheight #2
+ }
+ \NewDocumentCommand \igrGetLastPage { m }
+ {
+ \pdfximage{#1}
+ \cs_gset_nopar:Npx \igrLastPage { \the\pdflastximagepages }
+ }
+ }
+ {
+ \sys_if_engine_luatex:TF
+ {
+ \NewDocumentCommand \igrGetPageSize {}
+ {
+ \cs_gset_nopar:Npx \igrPageWidth { \the\pagewidth }
+ \cs_gset_nopar:Npx \igrPageHeight { \the\pageheight }
+ }
+ \NewDocumentCommand \igrSetPageSize { m m }
+ {
+ \pagewidth #1
+ \pageheight #2
+ }
+ \NewDocumentCommand \igrGetLastPage { m }
+ {
+ \saveimageresource{#1}
+ \cs_gset_nopar:Npx \igrLastPage { \the\lastsavedimageresourcepages }
+ }
+ }
+ {
+ \cs_if_exist:NTF \pdfpagewidth
+ {
+ \NewDocumentCommand \igrGetPageSize {}
+ {
+ \cs_gset_nopar:Npx \igrPageWidth { \the\pdfpagewidth }
+ \cs_gset_nopar:Npx \igrPageHeight { \the\pdfpageheight }
+ }
+ \NewDocumentCommand \igrSetPageSize { m m }
+ {
+ \pdfpagewidth #1
+ \pdfpageheight #2
+ }
+ }
+ {
+ \NewDocumentCommand \igrGetPageSize {}
+ {
+ \cs_gset_nopar:Npx \igrPageWidth { \the\paperwidth }
+ \cs_gset_nopar:Npx \igrPageHeight { \the\paperheight }
+ }
+ \NewDocumentCommand \igrSetPageSize { m m }
+ {
+ }
+ }
+ \NewDocumentCommand \igrGetLastPage { m }
+ {
+ \cs_gset_nopar:Npx \igrLastPage { 1 }
+ }
+ }
+ }
+
+\ExplSyntaxOff
+
\AtBeginDocument{%
- \edef\igrOrginalPageWidth{\the\pdfpagewidth}%
- \edef\igrOrginalPageHeight{\the\pdfpageheight}%
+ \igrGetPageSize%
+ \let\igrOrginalPageWidth\igrPageWidth%
+ \let\igrOrginalPageHeight\igrPageHeight%
}
\def\igr@target@auto{%
@@ -60,7 +133,7 @@
\let\igr@target@next=\igr@target@auto
-\def\igrtargetset#1{%
+\NewDocumentCommand\igrtargetset{m}{%
\def\igr@usertarget{#1}%
\let\igr@target@next=\igr@target@user%
}
@@ -100,10 +173,7 @@
\fi%
}
-\long\def\igrboxset#1{%
- \igr@nextAutoTarget%
- \setbox\igrbox\color@hbox#1\color@endbox%
- \igr@rebox%
+\def\igr@get@box@dimensions{%
\igr@length=\wd\igrbox%
\edef\igrBoxWidth{\the\igr@length}%
\igr@length=\ht\igrbox%
@@ -114,11 +184,18 @@
\edef\igrBoxHeight{\the\igr@length}%
}
+\NewDocumentCommand\igrboxset{+m}{%
+ \igr@nextAutoTarget%
+ \setbox\igrbox\color@hbox#1\color@endbox%
+ \igr@rebox%
+ \igr@get@box@dimensions%
+}
+
\def\igr@hyper{\hypertarget{\igrAutoTarget}{}}
-\def\igr@empty{}
-\def\igrboxcenter{%
+\NewDocumentCommand\igrboxcenter{}{%
+ \igrGetPageSize%
\thispagestyle{\igrpagestyle}%
%
\igr@length=-1in%
@@ -128,7 +205,7 @@
\advance\igr@length by -\headsep%
\edef\igr@offy@top{\the\igr@length}%
%
- \igr@length=\pdfpageheight%
+ \igr@length=\igrPageHeight%
\advance\igr@length by -\igrBoxHeight%
\divide\igr@length by 2%
\edef\igr@offy@abs{\the\igr@length}%
@@ -146,7 +223,7 @@
\fi%
\edef\igr@offx@left{\the\igr@length}%
%
- \igr@length=\pdfpagewidth%
+ \igr@length=\igrPageWidth%
\advance\igr@length by -\igrBoxWidth%
\divide\igr@length by 2%
\advance\igr@length by \igr@offx@left%
@@ -160,7 +237,7 @@
\break%
}
-\def\igrboxtikz{%
+\NewDocumentCommand\igrboxtikz{}{%
\path[use as bounding box] (0,0) rectangle (\igrBoxWidth,\igrBoxHeight);
\node[line width=0mm,inner sep=0,rectangle,above right] (box) at (0,0) {\box\igrbox};
\node[minimum width=\igrBoxWidth,minimum height=\igrBoxHeight,line width=0mm,inner sep=0mm,above right] (page) at (0,0) {};%
@@ -168,11 +245,12 @@
\let\igrboxtikzpage=\igrboxtikz
-\def\igrboxtikzcenter{%
- \path[use as bounding box] (0,0) rectangle (\pdfpagewidth,\pdfpageheight);
- \node[line width=0mm,inner sep=0,rectangle,above right] (box) at ({(\pdfpagewidth-\igrBoxWidth)/2},{(\pdfpageheight-\igrBoxHeight)/2}) {\box\igrbox};
- \edef\igrBoxWidth{\the\pdfpagewidth}%
- \edef\igrBoxHeight{\the\pdfpageheight}%
+\NewDocumentCommand\igrboxtikzcenter{}{%
+ \igrGetPageSize%
+ \path[use as bounding box] (0,0) rectangle (\igrPageWidth,\igrPageHeight);
+ \node[line width=0mm,inner sep=0,rectangle,above right] (box) at ({(\igrPageWidth-\igrBoxWidth)/2},{(\igrPageHeight-\igrBoxHeight)/2}) {\box\igrbox};
+ \let\igrBoxWidth\igrPageWidth%
+ \let\igrBoxHeight\igrPageHeight%
\node[minimum width=\igrBoxWidth,minimum height=\igrBoxHeight,line width=0mm,inner sep=0mm,above right] (page) at (0,0) {};%
}
@@ -186,16 +264,15 @@
% Output macros
\def\igr@out@resize#1#2{%
- \edef\igrCurrentPageWidth{\the\pdfpagewidth}%
- \edef\igrCurrentPageHeight{\the\pdfpageheight}%
+ \igrGetPageSize%
+ \let\igrCurrentPageWidth\igrPageWidth%
+ \let\igrCurrentPageHeight\igrPageHeight%
\eject%
- \pdfpagewidth=#1%
- \pdfpageheight=#2%
+ \igrSetPageSize{#1}{#2}%
\igr@overlay%
\edef\theigrpage{\thepage}%
\igrboxcenter%
- \pdfpagewidth=\igrCurrentPageWidth%
- \pdfpageheight=\igrCurrentPageHeight%
+ \igrSetPageSize{\igrCurrentPageWidth}{\igrCurrentPageHeight}%
}
\def\igr@out@center@fit@port{%
@@ -222,7 +299,9 @@
}
\def\igr@out@center@land{%
- \edef\igr@temp@w{\the\pdfpagewidth}\edef\igr@temp@h{\the\pdfpageheight}%
+ \igrGetPageSize%
+ \let\igr@temp@w\igrPageWidth%
+ \let\igr@temp@h\igrPageHeight%
\igr@out@resize{\igr@temp@h}{\igr@temp@w}%
}
@@ -232,17 +311,17 @@
% Toolbox output
-\long\def\igrcenterfit#1#2#3{%
+\NewDocumentCommand\igrcenterfit{mm+m}{%
\igrboxset{#3}%
\igr@out@resize{#1}{#2}%
}
-\long\def\igrpage#1{%
+\NewDocumentCommand\igrpage{+m}{%
\igrboxset{#1}%
\igr@out@page%
}
-\long\def\igrcenter#1{%
+\NewDocumentCommand\igrcenter{+m}{%
\igrboxset{#1}%
\igr@out@center@port%
}
@@ -250,85 +329,245 @@
% include macros
-\def\incgraph{%
- \@ifnextchar[{\inc@graph}{\inc@graph[]}}
-
-\def\inc@graph[#1]{%
- \@ifnextchar[{\inc@@graph[#1]}{\inc@@graph[#1][]}}
-
-\long\def\inc@@graph[#1][#2]#3{%
- \begingroup%
- \def\nt{#3}%
- \igr@if@file@exists{\nt}{%
- \igrset{#1}%
- \igr@match@hook%
- \edef\igr@incgraph{\noexpand\igr@include@graphics[\igr@options,#2]}%
- \igrboxset{\igr@incgraph{\nt}\ifx\igr@label@text\igr@empty\else\label{\igr@label@text}\fi}%
- \igr@output%
- \ifx\igr@bookmark@text\igr@empty\else%
- \edef\igr@bookmark{\noexpand\bookmark[\igr@bookmark@options,dest=\noexpand\igrAutoTarget]}%
- \igr@bookmark{\igr@bookmark@text}\fi%
- }{}%
- \endgroup%
-}
+\ExplSyntaxOn
+
+
+\bool_new:N \g__incgra_first_include
+\bool_new:N \g__incgra_multi_include
+\clist_new:N \l__incgra_extensions_clist
+\tl_new:N \l__incgra_bookmark_heading_options_tl
+\tl_new:N \l__incgra_bookmark_heading_text_tl
+\tl_new:N \l__incgra_bookmark_options_tl
+\tl_new:N \l__incgra_bookmark_text_tl
+\tl_new:N \l__incgra_label_text_tl
+\tl_new:N \l__incgra_options_tl
+
+
+\cs_new_protected_nopar:Npn \__incgra_if_file_exist_extensions:nTF #1
+ {
+ \bool_set_false:N \l_tmpa_bool
+ \clist_map_inline:Nn \l__incgra_extensions_clist
+ {
+ \file_if_exist:nTF { #1 ##1 }
+ {
+ \tl_put_right:Nn \nt {##1}
+ \bool_set_true:N \l_tmpa_bool
+ \clist_map_break:
+ }
+ }
+ \bool_if:NTF \l_tmpa_bool
+ }
+
+
+\cs_new_protected_nopar:Npn \__incgra_if_file_exist_extensions_star:nTF #1#2#3
+ {
+ \file_if_exist:nTF { #1 }
+ {
+ #2
+ }
+ {
+ \__incgra_if_file_exist_extensions:nTF {#1}{#2}{#3}
+ }
+ }
+
+
+\cs_new_protected_nopar:Npn \__incgra_includegraphics:nn #1#2
+ {
+ \igr@match@hook
+
+ \tl_set:Nn \l_tmpa_tl { \__incgra_include_graphics:w [ }
+ \tl_put_right:NV \l_tmpa_tl \l__incgra_options_tl
+ \tl_put_right:Nn \l_tmpa_tl { ,#1] }
+
+ \bool_if:NTF \g__incgra_multi_include
+ {
+ \bool_if:NTF \g__incgra_first_include
+ {
+ \tl_if_empty:NTF \l__incgra_label_text_tl
+ {
+ \igrboxset{\l_tmpa_tl{#2}}
+ }
+ {
+ \igrboxset{\l_tmpa_tl{#2}\label{\l__incgra_label_text_tl}}
+ }
+ \igr@output
+ \tl_if_empty:NF \l__incgra_bookmark_heading_text_tl
+ {
+ \tl_set:Nn \l_tmpa_tl { \bookmark[ }
+ \tl_put_right:NV \l_tmpa_tl \l__incgra_bookmark_heading_options_tl
+ \tl_put_right:Nn \l_tmpa_tl { ,dest=\igrAutoTarget] }
+ \l_tmpa_tl { \l__incgra_bookmark_heading_text_tl }
+ }
+ \bool_gset_false:N \g__incgra_first_include
+ }
+ {
+ \igrboxset{\l_tmpa_tl{#2}}
+ \igr@output
+ }
+ }
+ {
+ \tl_if_empty:NTF \l__incgra_label_text_tl
+ {
+ \igrboxset{\l_tmpa_tl{#2}}
+ }
+ {
+ \igrboxset{\l_tmpa_tl{#2}
+ \label{\l__incgra_label_text_tl}}
+ }
+ \igr@output
+ }
+ \tl_if_empty:NF \l__incgra_bookmark_text_tl
+ {
+ \tl_set:Nn \l_tmpa_tl { \bookmark[ }
+ \tl_put_right:NV \l_tmpa_tl \l__incgra_bookmark_options_tl
+ \tl_put_right:Nn \l_tmpa_tl { ,dest=\igrAutoTarget] }
+ \l_tmpa_tl{\l__incgra_bookmark_text_tl}
+ }
+ }
+
+\cs_generate_variant:Nn \__incgra_includegraphics:nn { nV }
+
+
+\NewDocumentCommand \incgraph { +O{} O{} m }
+ {
+ \group_begin:
+ \igrset{#1}
+ \bool_gset_false:N \g__incgra_multi_include
+ \tl_clear_new:N \nt
+ \tl_set:Nn \nt {#3}
+ \__incgra_if_file_exist:nTF{#3}
+ {
+ \__incgra_includegraphics:nV {#2} \nt
+ }
+ {}
+ \group_end:
+ }
+
+
+\NewDocumentCommand \incmultigraph { +O{} O{} m m }
+ {
+ \group_begin:
+ \igrset{#1}
+ \bool_gset_true:N \g__incgra_multi_include
+ \bool_gset_true:N \g__incgra_first_include
+ \tl_clear_new:N \nt
+ \tl_clear_new:N \nn
+ \foreach \n [count=\ni] in {#4}
+ {
+ \tl_set:Nn \nt {#3}
+ \tl_set:Nx \nn {\igr@zero@fill{\n}}
+ \__incgra_if_file_exist:nTF{#3}
+ {
+ \__incgra_includegraphics:nV {#2} \nt
+ }
+ {}
+ }
+ \group_end:
+ }
+
+
+\NewDocumentEnvironment{inctext}{ +O{} }
+ {
+ \igrset{#1}
+ \igr@match@hook
+ \igr@nextAutoTarget
+ \clearpage
+ \begin{lrbox}{\igrbox}
+ }
+ {
+ \unskip
+ \tl_if_empty:NF \l__incgra_label_text_tl
+ {
+ \label{\l__incgra_label_text_tl}
+ }
+ \end{lrbox}
+ \igr@rebox
+ \igr@get@box@dimensions
+ \igr@output
+ \tl_if_empty:NF \l__incgra_bookmark_text_tl
+ {
+ \tl_set:Nn \l_tmpa_tl { \bookmark[ }
+ \tl_put_right:NV \l_tmpa_tl \l__incgra_bookmark_options_tl
+ \tl_put_right:Nn \l_tmpa_tl { ,dest=\igrAutoTarget] }
+ \l_tmpa_tl { \l__incgra_bookmark_text_tl }
+ }
+ }
+
+
+\igrset
+ {
+ include~command/.code =
+ {
+ \cs_set_eq:NN \__incgra_include_graphics:w #1
+ },
+ include~command/.default = \includegraphics,
+ extensions/.code =
+ {
+ \clist_set:Nn \l__incgra_extensions_clist {#1}
+ },
+ extensions~add/.code =
+ {
+ \clist_put_right:Nn \l__incgra_extensions_clist {#1}
+ },
+ extensions~from~graphics/.code=
+ {
+ \cs_if_exist:NT \Gin@extensions
+ {
+ \clist_set:NV \l__incgra_extensions_clist \Gin@extensions
+ }
+ },
+ existence~check/.code =
+ {
+ \cs_set_eq:NN \__incgra_if_file_exist:nTF #1
+ },
+ ignore~on~not~found/.style =
+ {
+ existence~check = \file_if_exist:nTF
+ },
+ ignore~on~not~found~with~extensions/.code =
+ {
+ \cs_set_eq:NN \__incgra_if_file_exist:nTF \__incgra_if_file_exist_extensions:nTF
+ \quark_if_nil:NF { #1 }
+ {
+ \clist_set:Nn \l__incgra_extensions_clist {#1}
+ }
+ },
+ ignore~on~not~found~with~extensions/.default = \q_nil,
+ ignore~on~not~found~with~extensions*/.code =
+ {
+ \cs_set_eq:NN \__incgra_if_file_exist:nTF \__incgra_if_file_exist_extensions_star:nTF
+ \quark_if_nil:NF { #1 }
+ {
+ \clist_set:Nn \l__incgra_extensions_clist {#1}
+ }
+ },
+ ignore~on~not~found~with~extensions*/.default = \q_nil,
+ no~existence~check/.style =
+ {
+ existence~check = \use_ii:nnn
+ },
+ fail~on~not~found/.style = no~existence~check,
+ options/.store~in = \l__incgra_options_tl,
+ options~add/.code =
+ {
+ \tl_if_empty:NTF \l__incgra_options_tl
+ {
+ \tl_set:Nn \l__incgra_options_tl { #1 }
+ }
+ {
+ \tl_put_right:Nn \l__incgra_options_tl { ,#1 }
+ }
+ },
+ bookmark/.store~in = \l__incgra_bookmark_text_tl,
+ bookmark~options/.store~in = \l__incgra_bookmark_options_tl,
+ bookmark~heading/.store~in = \l__incgra_bookmark_heading_text_tl,
+ bookmark~heading~options/.store~in = \l__incgra_bookmark_heading_options_tl,
+ label/.store~in = \l__incgra_label_text_tl,
+ }
+
+\ExplSyntaxOff
-\def\igr@bookmark@heading{%
- \global\let\igr@process@label=\igr@empty%
- \ifx\igr@bookmark@heading@text\igr@empty\else%
- \edef\igr@bookmark{\noexpand\bookmark[\igr@bookmark@heading@options,dest=\noexpand\igrAutoTarget]}%
- \igr@bookmark{\igr@bookmark@heading@text}\fi%
- \global\let\igr@process@bookmark@heading=\igr@empty%
-}
-\def\incmultigraph{%
- \@ifnextchar[{\inc@multigraph}{\inc@multigraph[]}}
-
-\def\inc@multigraph[#1]{%
- \@ifnextchar[{\inc@@multigraph[#1]}{\inc@@multigraph[#1][]}}
-
-\long\def\inc@@multigraph[#1][#2]#3#4{%
- \begingroup%
- \igrset{#1}%
- \ifx\igr@label@text\igr@empty\global\let\igr@process@label=\igr@empty\else%
- \global\def\igr@process@label{\label{\igr@label@text}}\fi%
- \global\let\igr@process@bookmark@heading=\igr@bookmark@heading%
- \foreach \n [count=\ni] in {#4} {%
- \edef\nn{\igr@zero@fill{\n}}%
- \def\nt{#3}%
- \igr@if@file@exists{\nt}{%
- \igr@match@hook%
- \edef\igr@incgraph{\noexpand\igr@include@graphics[\igr@options,#2]}%
- \igrboxset{\igr@incgraph{\nt}\igr@process@label}%
- \igr@output%
- \igr@process@bookmark@heading%
- \ifx\igr@bookmark@text\igr@empty\else%
- \edef\igr@bookmark{\noexpand\bookmark[\igr@bookmark@options,dest=\noexpand\igrAutoTarget]}%
- \igr@bookmark{\igr@bookmark@text}\fi%
- }{}}\endgroup%
-}
-
-
-\newenvironment{inctext}[1][]{%
- \igrset{#1}%
- \igr@match@hook%
- \igr@nextAutoTarget%
- \clearpage\begin{lrbox}{\igrbox}%
-}{%
- \unskip\ifx\igr@label@text\igr@empty\else\label{\igr@label@text}\fi\end{lrbox}%
- \igr@rebox%
- \igr@length=\wd\igrbox%
- \edef\igrBoxWidth{\the\igr@length}%
- \igr@length=\ht\igrbox%
- \edef\igrBoxht{\the\igr@length}%
- \igr@length=\dp\igrbox%
- \edef\igrBoxdp{\the\igr@length}%
- \advance\igr@length by \igrBoxht%
- \edef\igrBoxHeight{\the\igr@length}%
- \igr@output%
- \ifx\igr@bookmark@text\igr@empty\else%
- \edef\igr@bookmark{\noexpand\bookmark[\igr@bookmark@options,dest=\noexpand\igrAutoTarget]}%
- \igr@bookmark{\igr@bookmark@text}\fi%
-}
\def\igr@make@zerofill#1#2#3#4#5#6#7#8#9{%
@@ -347,7 +586,7 @@
}%
}
-\def\igrmakezerofill#1#2{%
+\NewDocumentCommand\igrmakezerofill{mm}{%
\def\igr@zerofill##1{##1}%
\ifcase#2\or\or\igr@make@zerofill{0}{}{}{}{}{}{}{}{}%
\or\igr@make@zerofill{00}{0}{}{}{}{}{}{}{}%
@@ -362,11 +601,11 @@
\let#1=\igr@zerofill%
}
-\newcommand{\igrsetmatchvalue}[2]{%
+\NewDocumentCommand\igrsetmatchvalue{mm}{%
\pgfkeyssetvalue{/igrmatch/#1}{#2}%
}
-\newcommand{\igrifmatch}[3]{%
+\NewExpandableDocumentCommand\igrifmatch{mmm}{%
\pgfkeysifdefined{/igrmatch/#1}{%
\pgfkeysgetvalue{/igrmatch/#1}{\igrmatchvalue}#2}{#3}%
}
@@ -378,41 +617,26 @@
}%
}
-\newcommand{\igrsetmatches}[1]{\pgfkeys{/igrsetmatch/.cd,#1}}
-
-\newcommand{\igr@no@existence@check}[3]{#2}
+\NewDocumentCommand\igrsetmatches{m}{\pgfkeys{/igrsetmatch/.cd,#1}}
\igrset{%
- options/.store in=\igr@options,
- options add/.code={%
- \toks0=\expandafter{\igr@options}%
- \def\temp{#1}\toks1=\expandafter{\temp}%
- \edef\igr@options{\the\toks0,\the\toks1}},
- bookmark/.store in=\igr@bookmark@text,
- bookmark options/.store in=\igr@bookmark@options,
- bookmark heading/.store in=\igr@bookmark@heading@text,
- bookmark heading options/.store in=\igr@bookmark@heading@options,
- label/.store in=\igr@label@text,
zerofill/.code={\igrmakezerofill{\igr@zero@fill}{#1}},
set matches/.code=\igrsetmatches{#1},
hyper/.code={\let\igr@hypertarget=\igr@hyper},
- no hyper/.code={\let\igr@hypertarget=\igr@empty},
+ no hyper/.code={\def\igr@hypertarget{}},
if match code/.code args={#1#2#3}{\def\igr@match@hook{\igrifmatch{#1}{#2}{#3}}},
if match set/.style args={#1#2#3}{if match code={#1}{\igrset{#2}}{\igrset{#3}}},
if match set bookmark/.style args={#1#2#3}{if match code={#1}{\igrset{bookmark={#2}}}{\igrset{bookmark={#3}}}},
- disable match/.code={\let\igr@match@hook=\igr@empty},
- include command/.code={\let\igr@include@graphics=#1},
- include command/.default=\includegraphics,
- existence check/.code={\let\igr@if@file@exists=#1},
- fail on not found/.style={existence check=\igr@no@existence@check},
- ignore on not found/.style={existence check=\IfFileExists},
+ disable match/.code={\def\igr@match@hook{}},
pagestyle/.store in=\igrpagestyle,
target/.code={\igrtargetset{#1}},
overlay@code/.store in=\igr@tikz@hook,
overlay/.code={\let\igr@overlay=\igr@overlay@on\igrset{overlay@code={#1}}},
- overlay page number at/.style={overlay={\node[fill opacity=0.35,draw opacity=0.5,text opacity=1,
- inner xsep=1em,rounded corners,fill=white,draw=black] at (#1) {\thepage};}},
+ overlay page number options/.store in=\igr@overlay@pagenumber@options,
+ overlay page number at/.style={overlay={%
+ \expandafter\node\expandafter[\igr@overlay@pagenumber@options]
+ at (#1) {\thepage};}},
overlay page number at top/.style={overlay page number at={\igrBoxWidth/2,\igrBoxHeight-#1}},
overlay page number at top/.default=1.5cm,
overlay page number at bottom/.style={overlay page number at={\igrBoxWidth/2,#1}},
@@ -492,11 +716,13 @@
disable match,
include command,
ignore on not found,
+ extensions={.jpg,.png},
pagestyle=empty,
overlay@code=,
no overlay,
portrait,
border=0pt,
+ overlay page number options={fill opacity=0.35,draw opacity=0.5,text opacity=1,
+ inner xsep=1em,rounded corners,fill=white,draw=black},
}
-