summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def118
1 files changed, 83 insertions, 35 deletions
diff --git a/Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def b/Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def
index a50a4073beb..d046586836f 100644
--- a/Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def
+++ b/Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def
@@ -14,7 +14,6 @@
%% Please report bugs and patches through the tracker there.
%% Official releases, though, are made through CTAN:
%% http://www.ctan.org/pkg/dvipdfmx-def
-%% http://www.ctan.org/pkg/dvipdfmx-def
%%
%% The original source files were:
%% drivers.dtx (with options: `dvipdf,color1,psrulesZ')
@@ -23,7 +22,7 @@
%%
% emacs-page
\ProvidesFile{dvipdfmx.def}
- [2015/08/16 v4.05 LaTeX color/graphics driver for dvipdfmx (TeX Live/ChoF)]
+ [2015/09/11 v4.06 LaTeX color/graphics driver for dvipdfmx (TeX Live/ChoF)]
%
\def\c@lor@arg#1{%
\dimen@#1\p@
@@ -97,12 +96,64 @@
\@ifnextchar[\declareimagemask@i{\declareimagemask@i[]}}
\def\declareimagemask@i[#1]#2#3{%
\special{pdf:image @#2\space hide (#3) #1}}
+%
+% import from pdftex.def
+%
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname RequirePackage\endcsname\relax
+ \input infwarerr.sty\relax
+ \input ltxcmds.sty\relax
+\else
+ \RequirePackage{infwarerr}[2007/09/09]%
+ \RequirePackage{ltxcmds}[2010/12/07]%
+\fi
+\def\GPT@error{\@PackageError{dvipdfmx.def}}%
+\def\GPT@warn{\@PackageWarning{dvipdfmx.def}}%
+\let\GPT@pagebox@option\ltx@empty
+\begingroup
+\toks@{%
+\define@key{Gin}{page}{\def\Gin@page{#1}}
+\define@key{Gin}{mask}{\def\Gin@mask{#1}}
+\define@key{Gin}{interpolate}[true]{%
+ \lowercase{\Gin@boolkey{#1}}{interpolate}}
+\define@key{Gin}{pagebox}{%
+ \expandafter\let\expandafter\GPT@pagebox%
+ \csname GPT@pagebox@#1\endcsname
+ \ifx\GPT@pagebox\relax
+ \let\GPT@pagebox\ltx@empty
+ \GPT@warn{%
+ Unknown value `#1' for `pagebox'.\MessageBreak
+ Supported values:\MessageBreak
+ mediabox, cropbox, bleedbox, trimbox, artbox%
+ }%
+ \else%
+ \def\GPT@pagebox@option{-B \GPT@pagebox\space}%
+ \fi%
+}%
+}
+\ltx@IfUndefined{define@key}{
+ \edef\x{\endgroup
+ \noexpand\AtBeginDocument{%
+ \noexpand\ltx@IfUndefined{define@key}{}{\the\toks@}%
+ }%
+ }\x
+ }{%
+ \expandafter\endgroup\the\toks@
+ }%
+
+\def\GPT@pagebox@cropbox{cropbox}%
+\def\GPT@pagebox@mediabox{mediabox}%
+\def\GPT@pagebox@artbox{artbox}%
+\def\GPT@pagebox@trimbox{trimbox}%
+\def\GPT@pagebox@bleedbox{bleedbox}%
+%
+% end (import from pdftex.def)
%
% improved by N. Abe to cache BoundingBox for pdfpages package
%
\def\Gread@pdf#1{%
-\edef\@tempa{pdf@bbox@cache\Gin@page @sep@#1}%
+\edef\@tempa{pdf@bbox@cache@\Gin@page @\GPT@pagebox @#1}%
\expandafter\expandafter\expandafter\@ifundefined\expandafter{\@tempa}{\Gread@@pdf{#1}}{%
\edef\@gtempa{\csname\@tempa\endcsname}%
\expandafter\Gread@parse@bb\@gtempa\\}}
@@ -129,7 +180,7 @@
\else
\def\@tempc{-p \Gin@page\space}%
\fi
- \immediate\openin\@inputcheck="|extractbb \@tempc -O \Gin@base\Gin@ext"%
+ \immediate\openin\@inputcheck="|extractbb \GPT@pagebox@option \@tempc -O \Gin@base\Gin@ext"%
\fi
\Gread@true
\let\@tempb\Gread@false
@@ -152,40 +203,38 @@
\fi
%
% If BoundingBox is not obtained, extractbb may be an old one which does not
-% support the -p option, and usage of extractbb is printed to stdout.
-% Thus we retry without the -p opton.
+% support the -p and/or -B options, and usage of extractbb is printed to stdout.
+% Thus we retry without the -p and/or -B optons.
%
\ifGin@bbox\else
- \def\@tempd{}%
- \ifx\@tempc\@tempd\else
- \immediate\openin\@inputcheck="|extractbb -O \Gin@base\Gin@ext"%
- \message{^^JI try without the -p option^^J}%
- \Gread@true
- \let\@tempb\Gread@false
- \ifeof\@inputcheck
- \@latex@error
- {Cannot run pipe command. Try --shell-escape^^J%
- (--enable-pipes in MikTeX) option}%
- \@ehc
- \else
- \loop
- \read\@inputcheck to\@tempa
- \ifeof\@inputcheck
- \Gread@false
- \else
- \expandafter\Gread@find@bb\@tempa:.\\%
- \fi
- \ifGread@
- \repeat
- \immediate\closein\@inputcheck
- \fi
+ \immediate\openin\@inputcheck="|extractbb -O \Gin@base\Gin@ext"%
+ \message{^^JI try without the new options^^J}%
+ \Gread@true
+ \let\@tempb\Gread@false
+ \ifeof\@inputcheck
+ \@latex@error
+ {Cannot run pipe command. Try --shell-escape^^J%
+ (--enable-pipes in MikTeX) option}%
+ \@ehc
+ \else
+ \loop
+ \read\@inputcheck to\@tempa
+ \ifeof\@inputcheck
+ \Gread@false
+ \else
+ \expandafter\Gread@find@bb\@tempa:.\\%
+ \fi
+ \ifGread@
+ \repeat
+ \immediate\closein\@inputcheck
+ \aftergroup\Gin@clear@pagebox
\fi
\fi
%
% improved by N. Abe to cache BoundingBox for pdfpages package
%
\ifGin@bbox
- \edef\@tempa{pdf@bbox@cache\Gin@page @sep@#1}%
+ \edef\@tempa{pdf@bbox@cache@\Gin@page @\GPT@pagebox @#1}%
\expandafter\expandafter\expandafter\xdef\expandafter\csname\@tempa\endcsname{\@gtempa}%
\else
\@latex@error
@@ -195,21 +244,20 @@
\fi
\endgroup
\expandafter\Gread@parse@bb\@gtempa\\}
+\def\Gin@clear@pagebox{%
+ \let\GPT@pagebox\@empty}
\let\Gread@bmp\Gread@pdf
\def\Gin@page{!}
\def\Gin@mask{!}
\newif\ifGin@interpolate\Gin@interpolatefalse
-\@ifundefined{define@key}{}{%
- \define@key{Gin}{page}{\def\Gin@page{#1}}
- \define@key{Gin}{mask}{\def\Gin@mask{#1}}
- \define@key{Gin}{interpolate}[true]{%
- \lowercase{\Gin@boolkey{#1}}{interpolate}}}
+\let\GPT@pagebox\ltx@empty
\def\Ginclude@pdf#1{%
\message{<#1>}%
\bgroup
\def\@tempa{!}%
\special{pdf:epdf\space
\ifx\Gin@page\@tempa\else page\space\Gin@page\space\fi
+ \ifx\GPT@pagebox\ltx@empty\else pagebox\space\GPT@pagebox\space\fi
bbox\space\Gin@llx\space\Gin@lly\space\Gin@urx\space\Gin@ury\space
clip\space\ifGin@clip 1\else 0\fi\space
\ifx\Gin@scalex\@tempa\else width\space\the\Gin@req@width\space\fi