diff options
author | Karl Berry <karl@freefriends.org> | 2015-09-22 22:27:59 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-09-22 22:27:59 +0000 |
commit | cfbef8f54cf6eb9fc972333b04df7dc9aae751a4 (patch) | |
tree | d08f474e6fd8510fc35f51ed711bfa185cf2d402 /Master | |
parent | e4cc4ab8c7f449e89b821a5bad0b9785432b08a9 (diff) |
dvipdfmx-def (22sep15)
git-svn-id: svn://tug.org/texlive/trunk@38439 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/README | 26 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/Makefile | 24 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image1.tex | 28 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image2.tex | 28 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.pdf | bin | 0 -> 56394 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.tex | 44 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.txt | 23 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.pdf | bin | 0 -> 55824 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.tex | 44 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/dvipdfmx-def/dvipdfmx.def | 118 |
10 files changed, 300 insertions, 35 deletions
diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/README b/Master/texmf-dist/doc/latex/dvipdfmx-def/README new file mode 100644 index 00000000000..fb03b227723 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/README @@ -0,0 +1,26 @@ + README for dvipdfmx-def + +This directory contains the LaTeX graphics driver 'dvipdfmx.def' +used with the driver program 'dvipdfmx' +Version: 4.06; 2015-09-11. + +The canonical source is the subversion repository at +https://puszcza.gnu.org.ua/projects/latexfmxdef. + +Copyright (C) 2005-2015 Jin-Hwan Cho, Shunsaku Hirata +(with contributions from many others) + +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 any later version. + +To install: + (1) copy dvipdfmx.def to a directory + suitable-texmf/tex/latex/dvipdfmx-def + (2) copy all files in a subdirectory 'doc' to a directory + suitable-texmf/doc/latex/dvipdfmx-def + (3) update TeX's file database. + +---------------------------------------------------------------- +Akira Kakuto <kakuto at fuk dot kindai dot ac dot jp> diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/Makefile b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/Makefile new file mode 100644 index 00000000000..3d7aab9463e --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/Makefile @@ -0,0 +1,24 @@ +# +# Makefile to test pagebox=artbox etc. in platex with dvipdfmx +# +# files pagebox-dx.tex, pagebox-pd.tex, image1.tex, image2.tex +# are written by Y. Terada. +# + +all: pagebox-dx.pdf pagebox-pd.pdf + +pagebox-dx.pdf: pagebox-dx.tex image1.pdf image2.pdf + platex pagebox-dx.tex + dvipdfmx pagebox-dx.dvi + +pagebox-pd.pdf: pagebox-pd.tex image1.pdf image2.pdf + pdflatex pagebox-pd.tex + +image1.pdf: image1.tex + pdflatex $< + +image2.pdf: image2.tex + pdflatex $< + +clean:: + rm -f *~ *.log *.aux *.dvi pagebox-dx.pdf pagebox-pd.pdf diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image1.tex b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image1.tex new file mode 100644 index 00000000000..a9e2db41bec --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image1.tex @@ -0,0 +1,28 @@ +%!pdflatex +\documentclass{article} +% The papersize is set to 250bp x 250bp, which will +% make the MediaBox equal [0 0 250 250]. +\usepackage[papersize=250bp,margin=0pt,noheadfoot]{geometry} +\usepackage{tikz} +\pagestyle{empty} +% No compression; PDF version still might be 1.5. +\pdfcompresslevel=0 +\pdfobjcompresslevel=0 +\setlength{\parindent}{0pt} +\begin{document} +\pdfpageattr{% +% Enable or disable each of the following lines. +%/CropBox [30 30 220 100] +/BleedBox [5 45 170 200] +/TrimBox [70 20 150 120] +/ArtBox [60 10 100 150] +} +\begin{tikzpicture}[x=1bp,y=1bp,inner sep=0pt,color=red,thick] +\useasboundingbox(0,0) rectangle (250,250); +\draw ( 0, 0) node[anchor=south west] {M} rectangle (250,250) node[anchor=north east] {M}; +%\draw (30,30) node[anchor=south west] {C} rectangle (220,100) node[anchor=north east] {C}; +\draw ( 5,45) node[anchor=south west] {B} rectangle (170,200) node[anchor=north east] {B}; +\draw (70,20) node[anchor=south west] {T} rectangle (150,120) node[anchor=north east] {T}; +\draw (60,10) node[anchor=south west] {A} rectangle (100,150) node[anchor=north east] {A}; +\end{tikzpicture} +\end{document} diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image2.tex b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image2.tex new file mode 100644 index 00000000000..11363bc89f7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/image2.tex @@ -0,0 +1,28 @@ +%!pdflatex +\documentclass{article} +% The papersize is set to 250bp x 250bp, which will +% make the MediaBox equal [0 0 250 250]. +\usepackage[papersize=250bp,margin=0pt,noheadfoot]{geometry} +\usepackage{tikz} +\pagestyle{empty} +% No compression; PDF version still might be 1.5. +\pdfcompresslevel=0 +\pdfobjcompresslevel=0 +\setlength{\parindent}{0pt} +\begin{document} +\pdfpageattr{% +% Enable or disable each of the following lines. +/CropBox [30 30 220 100] +/BleedBox [5 45 170 200] +/TrimBox [70 20 150 120] +/ArtBox [60 10 100 150] +} +\begin{tikzpicture}[x=1bp,y=1bp,inner sep=0pt,color=red,thick] +\useasboundingbox(0,0) rectangle (250,250); +\draw ( 0, 0) node[anchor=south west] {M} rectangle (250,250) node[anchor=north east] {M}; +\draw (30,30) node[anchor=south west] {C} rectangle (220,100) node[anchor=north east] {C}; +\draw ( 5,45) node[anchor=south west] {B} rectangle (170,200) node[anchor=north east] {B}; +\draw (70,20) node[anchor=south west] {T} rectangle (150,120) node[anchor=north east] {T}; +\draw (60,10) node[anchor=south west] {A} rectangle (100,150) node[anchor=north east] {A}; +\end{tikzpicture} +\end{document} diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.pdf b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.pdf Binary files differnew file mode 100644 index 00000000000..19a67f6ac77 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.pdf diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.tex b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.tex new file mode 100644 index 00000000000..4db096982c0 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.tex @@ -0,0 +1,44 @@ +% platex + dvipdfmx +\documentclass[a4paper,dvipdfmx]{article} +\usepackage[paperheight=60cm,margin=2cm]{geometry} +\usepackage{graphicx} +\setlength{\parindent}{0pt} +\pagestyle{empty} + +\makeatletter +\def\test#1#2{% + \def\@temp{#1}% + \ifx\@temp\@empty + \makebox[5.5cm][l]{\texttt{\LARGE pagebox is absent}}\fbox{\includegraphics{#2.pdf}}% + \else + \makebox[5.5cm][l]{\texttt{\LARGE pagebox=#1box}}\fbox{\includegraphics[pagebox=#1box]{#2.pdf}}% + \fi + \par +} +\makeatother + +\begin{document} +\section{test: image1} +\test{}{image1} +\test{media}{image1} +\test{}{image1} +\test{art}{image1} +\test{}{image1} +\test{bleed}{image1} +\test{}{image1} +\test{trim}{image1} +\test{}{image1} +\newpage +\section{test: image2} +\test{}{image2} +\test{media}{image2} +\test{}{image2} +\test{art}{image2} +\test{}{image2} +\test{bleed}{image2} +\test{}{image2} +\test{trim}{image2} +\test{}{image2} +\test{crop}{image2} +\test{}{image2} +\end{document} diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.txt b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.txt new file mode 100644 index 00000000000..53560362a3b --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-dx.txt @@ -0,0 +1,23 @@ + pagebox-dx.txt + +This directory contains examples for a new feature of dvipdfmx.def: +support of an option [pagebox=artbox, etc.] in PDF inclusion, like +that in pdflatex, in the case of latex, platex, and uplatex with the +driver program dvipdfmx. The feature is supported in dvipdfmx.def +version 4.06 or later ones. It requires a new dvipdfmx which is not +in TeX Live 2015. The new dvipdfmx will be available in TeX Live 2016. +Interested users may build themselves the new dvipdfmx by using new +sources in the TeX Live repository. + +There is a Makefile for GNU Make. All test files are written by Y. Terada. + +Note that results are different in the case of dvipdfmx, pagebox-dx.pdf, +compared with those for pdflatex, pagebox-pd.pdf, when the pagebox option +is not given. This is because BoundingBox is determined in the order of +precedence: CropBox --> ArtBox --> TrimBox --> BleedBox --> MediaBox +in the case of dvipdfmx. We keep the order for compatibility with old +documents which uses dvipdfmx. In the case of pdflatex and xelatex, the +order is CropBox --> MediaBox --> BleedBox --> TrimBox --> ArtBox. + +-------------------------------------------------------------------- +Akira Kakuto <kakuto at fuk dot kindai dot ac dot jp> diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.pdf b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.pdf Binary files differnew file mode 100644 index 00000000000..83a810151c3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.pdf diff --git a/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.tex b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.tex new file mode 100644 index 00000000000..c85d27981b9 --- /dev/null +++ b/Master/texmf-dist/doc/latex/dvipdfmx-def/doc/pagebox-pd.tex @@ -0,0 +1,44 @@ +% pdflatex +\documentclass[a4paper]{article} +\usepackage[paperheight=60cm,margin=2cm]{geometry} +\usepackage{graphicx} +\setlength{\parindent}{0pt} +\pagestyle{empty} + +\makeatletter +\def\test#1#2{% + \def\@temp{#1}% + \ifx\@temp\@empty + \makebox[5.5cm][l]{\texttt{\LARGE pagebox is absent}}\fbox{\includegraphics{#2.pdf}}% + \else + \makebox[5.5cm][l]{\texttt{\LARGE pagebox=#1box}}\fbox{\includegraphics[pagebox=#1box]{#2.pdf}}% + \fi + \par +} +\makeatother + +\begin{document} +\section{test: image1} +\test{}{image1} +\test{media}{image1} +\test{}{image1} +\test{art}{image1} +\test{}{image1} +\test{bleed}{image1} +\test{}{image1} +\test{trim}{image1} +\test{}{image1} +\newpage +\section{test: image2} +\test{}{image2} +\test{media}{image2} +\test{}{image2} +\test{art}{image2} +\test{}{image2} +\test{bleed}{image2} +\test{}{image2} +\test{trim}{image2} +\test{}{image2} +\test{crop}{image2} +\test{}{image2} +\end{document} 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 |