summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/pdfx/pdfx.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/pdfx/pdfx.sty')
-rw-r--r--Master/texmf-dist/tex/latex/pdfx/pdfx.sty101
1 files changed, 67 insertions, 34 deletions
diff --git a/Master/texmf-dist/tex/latex/pdfx/pdfx.sty b/Master/texmf-dist/tex/latex/pdfx/pdfx.sty
index 58412c70a33..0d2fb58b38f 100644
--- a/Master/texmf-dist/tex/latex/pdfx/pdfx.sty
+++ b/Master/texmf-dist/tex/latex/pdfx/pdfx.sty
@@ -6,7 +6,7 @@
%%
%% pdfx.dtx (with options: `package')
%%
-%% Copyright (c) 2015, CV Radhakrishnan <cvr@river-valley.org>,
+%% Copyright (c) 2017, CV Radhakrishnan <cvr@river-valley.org>,
%% Han The Thanh <thanh@river-valley.org>,
%% Ross Moore <ross.moore@mq.edu.au>,
%% Peter Selinger <selinger@mathstat.dal.ca>
@@ -31,7 +31,7 @@
}{}%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{pdfx}
- [2016/05/03 v1.5.8 PDF/X and PDF/A support (CVR/HTH/RRM/PS)]
+ [2017/05/18 v1.5.84 PDF/X and PDF/A support (CVR/HTH/RRM/PS)]
\newif\ifpdfx@noBOM \pdfx@noBOMfalse % use a BOM in the XMP packet
\newif\ifpdfx@x \pdfx@xfalse % PDF/X mode
@@ -164,6 +164,7 @@
\global\pdfminorversion=6 }
%% options to alter PDF minor version, in case needed in special circumstances
+\DeclareOption{pdf12}{\global\pdfminorversion=2 }
\DeclareOption{pdf13}{\global\pdfminorversion=3 }
\DeclareOption{pdf14}{\global\pdfminorversion=4 }
\DeclareOption{pdf15}{\global\pdfminorversion=5 }
@@ -227,10 +228,14 @@
\global\vnmxmptrue
\global\latEXTxmptrue
\global\latLATxmptrue
+ \global\vnmxmptrue
\global\ipaxmptrue
\global\mathxmptrue
+ \global\let\pdfx@useactivespacestrue\pdfx@useactivespacesfalse
}
+\newif\ifpdfx@useactivespaces
+
\ExecuteOptions{noBOM,a-1b}
\ProcessOptions
@@ -250,7 +255,6 @@
\ifarmSCIxmp\pdfx@nopdfinfotrue
\fi\fi\fi\fi\fi
-\newif\ifpdfx@useactivespaces
\iflatLATxmp\pdfx@useactivespacestrue\fi
\ifgrkLGRxmp\pdfx@useactivespacestrue\fi
\ifcyrKOIxmp\pdfx@useactivespacestrue\fi
@@ -382,14 +386,14 @@
\fi
\fi
-\ifluatex\else
+\ifluatex\else\ifxetex\else
\@ifpackageloaded{inputenc}{%
}{%
\RequirePackage{inputenc}
% allow this to be loaded again cleanly
\expandafter\let\csname ver@inputenc.sty\endcsname\relax
}
-\fi
+\fi\fi
%% pseudo-declare the L8U encoding
\expandafter\let\csname L8U-cmd\expandafter\endcsname\csname OT1-cmd\endcsname
@@ -546,6 +550,7 @@
\liixu@enablenumberline
\def\empty{}% used in LICR patterns
\LIIXUscriptcommands
+ \LIIXUtipacommands
\LIIXUmapTeXnames
%% from Hyperref's psdextra.def
\csname psdmapshortnames\endcsname
@@ -664,12 +669,12 @@
\PackageWarning{pdfx}{%
CreationDate is not properly supported;^^J
PDF validation may fail. To avoid this problem use:^^J
- xelatex -shell-escape -output-driver="xdvipdfmx -z 0" <filename>^^J}
+ xelatex -shell-escape <filename>^^J}
\else
\PackageError{pdfx}{%
CreationDate is not properly supported;^^J
PDF validation may fail.}{To avoid this problem use:^^J
- xelatex -shell-escape -output-driver="xdvipdfmx -z 0" <filename> }
+ xelatex -shell-escape <filename> }
\fi
\fi
\fi
@@ -732,74 +737,74 @@
%% the "pdftex" option seems to work fine with LuaTeX
%% Hyperref options for PDF/X
-\def\pdfx@pdfX@opts@pdftex{%
+\edef\pdfx@pdfX@opts@pdftex{%
draft,pdftex,pdfpagemode=UseNone,bookmarks=false,%
pdfversion=1.\thepdfminorversion,pdfstartview=}
-\def\pdfx@pdfX@opts@xetex{%
+\edef\pdfx@pdfX@opts@xetex{%
draft,xetex,pdfpagemode=UseNone,bookmarks=false,%
pdfversion=1.\thepdfminorversion,pdfstartview=}
-\def\pdfx@pdfX@opts@luatex{%
- draft,pdftex,pdfpagemode=UseNone,bookmarks=false,%
+\edef\pdfx@pdfX@opts@luatex{%
+ draft,luatex,pdfpagemode=UseNone,bookmarks=false,%
pdfversion=1.\thepdfminorversion,pdfstartview=}
%% Hyperref options for PDF/A and PDF/E
-\def\pdfx@pdfAE@opts@pdftex{pdftex,pdfa,pdfversion=1.\thepdfminorversion}%
-\def\pdfx@pdfAE@opts@xetex{xetex,pdfa,pdfversion=1.\thepdfminorversion}%
-\def\pdfx@pdfAE@opts@luatex{pdftex,pdfa,pdfversion=1.\thepdfminorversion}%
+\edef\pdfx@pdfAE@opts@pdftex{pdftex,pdfa,pdfversion=1.\thepdfminorversion}%
+\edef\pdfx@pdfAE@opts@xetex{xetex,pdfa,pdfversion=1.\thepdfminorversion}%
+\edef\pdfx@pdfAE@opts@luatex{luatex,pdfa,pdfversion=1.\thepdfminorversion}%
\ifpdfx@x
\@ifpackageloaded{hyperref}{%
\ifxetex
- \hypersetup{\pdfx@pdfX@opts@xetex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@xetex}
\else\ifluatex
- \hypersetup{\pdfx@pdfX@opts@luatex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@luatex}
\else
- \hypersetup{\pdfx@pdfX@opts@pdftex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfX@opts@pdftex}
\fi\fi
}{%
\ifxetex
- \RequirePackage[\pdfx@pdfX@opts@xetex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@xetex]{hyperref}
\else\ifluatex
- \RequirePackage[\pdfx@pdfX@opts@luatex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@luatex]{hyperref}
\else
- \RequirePackage[\pdfx@pdfX@opts@pdftex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfX@opts@pdftex]{hyperref}
\fi\fi
}%
\else
\ifpdfx@e
\@ifpackageloaded{hyperref}{%
\ifxetex
- \hypersetup{\pdfx@pdfAE@opts@xetex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@xetex}
\else\ifluatex
- \hypersetup{\pdfx@pdfAE@opts@luatex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@luatex}
\else
- \hypersetup{\pdfx@pdfAE@opts@pdftex}
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@pdftex}
\fi\fi
}{%
\ifxetex
- \RequirePackage[\pdfx@pdfAE@opts@xetex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@xetex]{hyperref}
\else\ifluatex
- \RequirePackage[\pdfx@pdfAE@opts@luatex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@luatex]{hyperref}
\else
- \RequirePackage[\pdfx@pdfAE@opts@pdftex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@pdftex]{hyperref}
\fi\fi
}%
\else % generating PDF/A or ...
\@ifpackageloaded{hyperref}{%
\ifxetex
- \hypersetup{\pdfx@pdfAE@opts@xetex}%
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@xetex}%
\else\ifluatex
- \hypersetup{\pdfx@pdfAE@opts@luatex}%
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@luatex}%
\else
- \hypersetup{\pdfx@pdfAE@opts@pdftex}%
+ \expandafter\hypersetup\expandafter{\pdfx@pdfAE@opts@pdftex}%
\fi\fi
}{%
\ifxetex
- \RequirePackage[\pdfx@pdfAE@opts@xetex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@xetex]{hyperref}
\else\ifluatex
- \RequirePackage[\pdfx@pdfAE@opts@luatex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@luatex]{hyperref}
\else
- \RequirePackage[\pdfx@pdfAE@opts@pdftex]{hyperref}
+ \expandafter\RequirePackage\expandafter[\pdfx@pdfAE@opts@pdftex]{hyperref}
\fi\fi
}%
\fi\fi
@@ -808,6 +813,11 @@
\hypersetup{psdextra}
\fi
+%% hyperref doesn't set the minor version for XeTeX
+\ifxetex
+ \special{pdf:minorversion \thepdfminorversion}
+\fi
+
\ifx\xmp@CreatorTool\@empty
\edef\xmp@CreatorTool{\@pdfcreator}
\fi
@@ -1378,9 +1388,9 @@
\global\let#1\empty
\else
\begingroup
- \ifluatex\else
+ \ifluatex\else\ifxetex\else
\inputencoding{utf8}%
- \fi
+ \fi\fi
\hypersetup{pdfencoding=auto}%
\pdfstringdef#1{#2}%
\endgroup
@@ -1722,6 +1732,29 @@
\let\includexmp\pdfx@xmpincl@xetex
\fi
+%% macro provided by Leonardo E. Segovia on 2007-05-15
+%% <leonardo.segovia@cs.uns.edu.ar>
+\def\pdfx@xmpincl@luatex#1{%
+ \IfFileExists{#1.xmp}{%
+ \mcs@xmpincl@patchFile{#1}%
+ \begingroup
+ \pdfcompresslevel=0
+ \immediate\pdfobj uncompressed stream attr {/Type /Metadata /Subtype /XML}
+ file{#1.xmpi}%
+ \pdfcatalog{/Metadata \the\pdflastobj\space 0 R}%
+ \endgroup
+ }{%
+ \newcommand{\mcs@xmpincl@filename}{#1.xmp}%
+ \PackageError{xmpincl}%
+ {The file \mcs@xmpincl@filename\space was not found}%
+ {The file \mcs@xmpincl@filename\space The metadata file
+ wasn't found.\MessageBreak Oops.}%
+ }
+}
+\ifluatex
+ \let\includexmp\pdfx@xmpincl@luatex
+\fi
+
%%----------------------------------------------------------------------
\begingroup
\ifpdfx@x