summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-02-20 21:00:04 +0000
committerKarl Berry <karl@freefriends.org>2023-02-20 21:00:04 +0000
commitdc3e0bc45fa068ea0640402f61df774dd612285f (patch)
treea4249bc5000790f49ae8c27d433d01bda27583b1 /Master/texmf-dist
parent34b4cb3bb6b0acb3ba84e4f221500c1750d67312 (diff)
hyperxmp (20feb23)
git-svn-id: svn://tug.org/texlive/trunk@65980 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/hyperxmp/README2
-rw-r--r--Master/texmf-dist/doc/latex/hyperxmp/hyperxmp.pdfbin1555235 -> 1272020 bytes
-rw-r--r--Master/texmf-dist/doc/man/man1/hyperxmp-add-bytecount.man1.pdfbin20522 -> 20524 bytes
-rwxr-xr-xMaster/texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl2
-rw-r--r--Master/texmf-dist/source/latex/hyperxmp/einstein-xmp.tex1
-rw-r--r--Master/texmf-dist/source/latex/hyperxmp/hyperxmp-stds.tex2
-rw-r--r--Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx294
-rw-r--r--Master/texmf-dist/source/latex/hyperxmp/hyperxmp.ins4
-rw-r--r--Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty145
9 files changed, 256 insertions, 194 deletions
diff --git a/Master/texmf-dist/doc/latex/hyperxmp/README b/Master/texmf-dist/doc/latex/hyperxmp/README
index 93a2733315d..22a0b26a9a7 100644
--- a/Master/texmf-dist/doc/latex/hyperxmp/README
+++ b/Master/texmf-dist/doc/latex/hyperxmp/README
@@ -47,7 +47,7 @@ Building hyperxmp.pdf is a little more involved:
Copyright and license
=====================
-Copyright (C) 2011-2020 Scott Pakin
+Copyright (C) 2011-2023 Scott Pakin
This file may be distributed and/or modified under the conditions of
the LaTeX Project Public License, either version 1.3c of this license
diff --git a/Master/texmf-dist/doc/latex/hyperxmp/hyperxmp.pdf b/Master/texmf-dist/doc/latex/hyperxmp/hyperxmp.pdf
index f11adaee15a..2374394e6b2 100644
--- a/Master/texmf-dist/doc/latex/hyperxmp/hyperxmp.pdf
+++ b/Master/texmf-dist/doc/latex/hyperxmp/hyperxmp.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/man/man1/hyperxmp-add-bytecount.man1.pdf b/Master/texmf-dist/doc/man/man1/hyperxmp-add-bytecount.man1.pdf
index 75d6315efb3..1d99dbf0f7b 100644
--- a/Master/texmf-dist/doc/man/man1/hyperxmp-add-bytecount.man1.pdf
+++ b/Master/texmf-dist/doc/man/man1/hyperxmp-add-bytecount.man1.pdf
Binary files differ
diff --git a/Master/texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl b/Master/texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl
index 8d965a63f5f..d3fb7e59b17 100755
--- a/Master/texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl
+++ b/Master/texmf-dist/scripts/hyperxmp/hyperxmp-add-bytecount.pl
@@ -8,7 +8,7 @@ use warnings;
# hyperxmp-add-bytecount #
# Adds/updates byteCount specification in XMP packet in pdf file(s) #
# made by hyperxmp, with byteCount = file size. #
-# Copyright (C) 2020 John Collins <jcc8@psu.edu> #
+# Copyright (C) 2020-2022 John Collins <jcc8@psu.edu> #
# and Scott Pakin, <scott+hyxmp@pakin.org> #
# #
# This program may be distributed and/or modified under the conditions #
diff --git a/Master/texmf-dist/source/latex/hyperxmp/einstein-xmp.tex b/Master/texmf-dist/source/latex/hyperxmp/einstein-xmp.tex
index 7fad01f38a7..323937cc4a6 100644
--- a/Master/texmf-dist/source/latex/hyperxmp/einstein-xmp.tex
+++ b/Master/texmf-dist/source/latex/hyperxmp/einstein-xmp.tex
@@ -21,7 +21,6 @@
xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/"
xmlns:pdfuaid="http://www.aiim.org/pdfua/ns/id/"
xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"
- xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"
xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"
xmlns:jav="http://www.niso.org/schemas/jav/1.0/"
xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"
diff --git a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp-stds.tex b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp-stds.tex
index e236b8a6b37..2b77c2703d6 100644
--- a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp-stds.tex
+++ b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp-stds.tex
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2011-2020 by Scott Pakin <scott+hyxmp@pakin.org>
+%% Copyright (C) 2011-2023 by Scott Pakin <scott+hyxmp@pakin.org>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3c of this license
diff --git a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
index 4fad6b29d0a..ea0d5334298 100644
--- a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
+++ b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2011-2020 by Scott Pakin <scott+hyxmp@pakin.org>
+% Copyright (C) 2011-2023 by Scott Pakin <scott+hyxmp@pakin.org>
% --------------------------------------------------------------
%
% This file may be distributed and/or modified under the
@@ -22,7 +22,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{hyperxmp}
%<*package>
- [2020/11/22 v5.9 Store hyperref metadata in XMP format]
+ [2022/10/16 v5.11 Store hyperref metadata in XMP format]
%</package>
%
%<*driver>
@@ -76,7 +76,7 @@
pdftitle={The hyperxmp package},
pdfsubject={LaTeX2e support for XMP metadata},
pdfkeywords={LaTeX, embedded metadata, XMP, PDF, copyright, license, comments},
- pdfcopyright={Copyright (C) 2011-2020, Scott Pakin},
+ pdfcopyright={Copyright (C) 2011-2023, Scott Pakin},
pdflicenseurl={http://www.latex-project.org/lppl/},
pdfcaptionwriter={Scott Pakin},
pdfcontactemail={scott+hyxmp@pakin.org},
@@ -98,25 +98,40 @@
bookmarksnumbered
}
+% Redefine \changes to properly sort v5.10 *after* v5.9.
+\makeatletter
+\let\orig@changes=\changes
+\def\discard@suffix#1\relax{}
+\def\pad@minor@ver v#1.#2\relax{%
+ \afterassignment\discard@suffix
+ \@tempcnta=#2\relax
+ \edef\new@change@ver{%
+ v#1.%
+ \ifnum\@tempcnta<10
+ 0#2
+ \else
+ #2
+ \fi
+ }%
+}
+\renewcommand{\changes}[2]{%
+ \pad@minor@ver#1\relax
+ \orig@changes{\new@change@ver=#1}{#2}%
+}
+\makeatother
+
\begin{document}
\DocInput{hyperxmp.dtx}
\Needspace{10\baselineskip}
- \phantomsection\addcontentsline{toc}{section}{Change History}
+ \renewcommand*{\glossaryname}{Change History}
\PrintChanges
- \makeatletter
- \let\orig@index@prologue=\index@prologue
- \def\index@prologue{%
- \phantomsection\addcontentsline{toc}{section}{Index}
- \orig@index@prologue
- }%
- \makeatother
\Needspace{12\baselineskip}
\PrintIndex
\end{document}
%</driver>
% \fi
%
-% \CheckSum{2836}
+% \CheckSum{2844}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -203,11 +218,12 @@
% \DoNotIndex{\@ifpackageloaded,\@ifundefined,\@nil,\@secondoftwo}
% \DoNotIndex{\@tempcnta,\@tempcntb,\MessageBreak,\advance,\afterassignment}
% \DoNotIndex{\aftergroup,\begin,\begingroup,\bgroup,\catcode,\csname,\def}
-% \DoNotIndex{\divide,\edef,\egroup,\else,\end,\endcsname,\endgroup}
-% \DoNotIndex{\expandafter,\fi,\futurelet,\g@addto@macro,\gdef,\global,\if}
-% \DoNotIndex{\ifcase,\ifnum,\ifx,\immediate,\lccode,\let,\loop,\lowercase}
-% \DoNotIndex{\multiply,\newcommand,\noexpand,\or,\relax,\repeat,\space}
-% \DoNotIndex{\string,\the,\toks,\uccode,\uppercase,\usepackage,\xdef}
+% \DoNotIndex{\divide,\do,\edef,\egroup,\else,\end,\endcsname,\endgroup}
+% \DoNotIndex{\expandafter,\fi,\futurelet,\g@addto@macro,\gdef,\global}
+% \DoNotIndex{\hbox,\if,\ifcase,\ifnum,\ifx,\immediate,\lccode,\let,\loop}
+% \DoNotIndex{\lowercase,\multiply,\newcommand,\noexpand,\or,\relax,\repeat}
+% \DoNotIndex{\space,\string,\the,\toks,\uccode,\uppercase,\usepackage}
+% \DoNotIndex{\xdef}
%
% ^^A Define a few logical styles.
% \DeclareRobustCommand{\term}[1]{#1\SortIndex{#1}{#1}}
@@ -1114,21 +1130,23 @@
% \item \pdfLaTeX
% \item \LuaLaTeX
% \item \XeLaTeX
-% \item \LaTeX~$+$ Dvipdfm
+% \item \LaTeX~$+$ \term{Dvipdfm}
+% \item \LaTeX~$+$ \Dvips~$+$ \term{Ghostscript}
% \item \LaTeX~$+$ \Dvips~$+$ Adobe Acrobat Distiller
% \end{itemize}
%
% \noindent
-% Unfortunately, the \LaTeX~$+$ \Dvips~$+$ \term{Ghostscript} path
-% doesn't work.
-% \href{http://bugs.ghostscript.com/show_bug.cgi?id=690066}{Ghostscript
-% bug report~\#690066}, closed with ``\textsc{wontfix}'' status on
-% 2012-05-28, explains that \term{Ghostscript} doesn't honor the
-% \pdfterm{Metadata} tag needed to inject a custom \acro{XMP} packet.
-% Instead, \term{Ghostscript} fabricates an \acro{XMP} packet of its own
-% based on the metadata it finds in the \acro{PDF} file's \pdfterm{Info}
-% dictionary (\pdfterm{Author}, \pdfterm{Title}, \pdfterm{Subject}, and
-% \pdfterm{Keywords}).
+% The \LaTeX~$+$ \Dvips~$+$ \term{Ghostscript} path stores the
+% \acro{XMP} packet in a compressed stream, which implies that a
+% \acro{PDF} reader is needed to access it. Ideally, \acro{XMP}
+% metadata should be stored uncompressed so it can be extracted as
+% ordinary text. Unfortunately, as of 2022-10-07, Ghostscript has no
+% plans to support uncompressed metadata streams
+% (\href{https://bugs.ghostscript.com/show_bug.cgi?id=705962}{Ghostscript
+% bug report~\#705962}). It is possible to leave \emph{all} streams
+% uncompressed by passing |-dCompressStreams=false| to \term{Ghostscript}
+% (e.g.,~via the \progname{ps2pdf} wrapper script), but this leads to
+% larger file sizes.
%
% \bigskip
%
@@ -1742,6 +1760,19 @@ sub mycmd {
% \subsection{Initial preparation}
% \label{sec:initial-prep}
%
+% \changes{v5.11}{2022/10/02}{Disable \protect\pkgname{hyperxmp} if
+% \LaTeX3 document metadata is available. Document metadata implies
+% the presence of PDF management, which completely breaks
+% \protect\pkgname{hyperxmp}}
+% \begin{macrocode}
+\IfDocumentMetadataTF{%
+ \PackageWarning
+ {hyperxmp}
+ {Disabling hyperxmp because it is incompatible with PDF management}
+}{}
+\IfDocumentMetadataTF{\endinput}{}
+% \end{macrocode}
+%
% \changes{v1.2}{2011/04/17}{Made the package compatible with \pkgname{ngerman}.
% Thanks to Tobias Mueller for the bug report.}
%
@@ -1772,12 +1803,19 @@ sub mycmd {
% \protect\tex\ back ends that provide it. Thanks to Nelson Posse
% Lago for pointing out why \protect\pkgname{atenddvi} is best avoided
% if possible}
-% \begin{macrocode}
-\@ifundefined{AtEndDocument}{%
- \RequirePackage{atenddvi}
- \let\hyxmp@at@end=\AtEndDvi
+% \changes{v5.11}{2022/10/16}{Use \protect\cs{AddToHook} when available.
+% This addresses a bug reported on \protect\TeX\ StackExchange by joHub
+% and solved by Ulrike Fischer}
+% \begin{macrocode}
+\@ifundefined{AddToHook}{%
+ \@ifundefined{AtEndDocument}{%
+ \RequirePackage{atenddvi}
+ \let\hyxmp@at@end=\AtEndDvi
+ }{%
+ \let\hyxmp@at@end=\AtEndDocument
+ }
}{%
- \let\hyxmp@at@end=\AtEndDocument
+ \def\hyxmp@at@end{\AddToHook{shipout/lastpage}}
}
% \end{macrocode}
% \end{macro}
@@ -2056,14 +2094,26 @@ sub mycmd {
% \end{macrocode}
% \end{macro}
%
+% \begin{macro}{\@hyxmp@count}
+% \changes{v5.11}{2022/10/02}{Added this macro to fix a bug with
+% \protect\optname{pdfapart}. Thanks to John H. Lienhard and
+% Kartik Singhal for their bug reports}
+% Define a temporary counter. The code previously used \cs{@tempcnta},
+% but this is no longer safe within \cs{pdfstringdef} as of more recent
+% versions of \pkgname{hyperref}.
+% \begin{macrocode}
+\newcount\@hyxmp@count
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@pdfapart}
% Prepare to store the \acro{PDF/A} part ID, which defaults to~``1''
% if \optname{pdfa} is passed to \pkgname{hyperref}.
% \begin{macrocode}
\def\@pdfapart{}
\define@key{Hyp}{pdfapart}{%
- \afterassignment\hyxmp@no@bad@parts\@tempcnta=0#1\relax
- \hyxmp@pdfstringdef\@pdfapart{\the\@tempcnta}%
+ \afterassignment\hyxmp@no@bad@parts\@hyxmp@count=0#1\relax
+ \hyxmp@pdfstringdef\@pdfapart{\the\@hyxmp@count}%
}
% \end{macrocode}
% \end{macro}
@@ -2085,8 +2135,8 @@ sub mycmd {
% \begin{macrocode}
\def\@pdfuapart{}
\define@key{Hyp}{pdfuapart}{%
- \afterassignment\hyxmp@no@bad@parts\@tempcnta=0#1\relax
- \hyxmp@pdfstringdef\@pdfuapart{\the\@tempcnta}%
+ \afterassignment\hyxmp@no@bad@parts\@hyxmp@count=0#1\relax
+ \hyxmp@pdfstringdef\@pdfuapart{\the\@hyxmp@count}%
}
% \end{macrocode}
% \end{macro}
@@ -2101,11 +2151,11 @@ sub mycmd {
%
% \begin{macro}{\hyxmp@set@pdfx@major@i}
% This is the first helper macro for |\hyxmp@set@pdfx@major|. It stores
-% the \acro{PDF/X} major version in |\@tempcnta|.
+% the \acro{PDF/X} major version in |\@hyxmp@count|.
% \begin{macrocode}
\def\hyxmp@set@pdfx@major@i PDF/X-{%
\afterassignment\hyxmp@set@pdfx@major@ii
- \@tempcnta=%
+ \@hyxmp@count=%
}
% \end{macrocode}
% \end{macro}
@@ -2113,12 +2163,12 @@ sub mycmd {
% \begin{macro}{\hyxmp@set@pdfx@major@ii}
% \begin{macro}{\hyxmp@pdfx@major}
% This is the second helper macro for |\hyxmp@set@pdfx@major|. It
-% copies the \acro{PDF/X} major version from |\@tempcnta| to
+% copies the \acro{PDF/X} major version from |\@hyxmp@count| to
% |\@hyxmp@pdfx@major| and discards the rest of the \acro{PDF/X}
% standard string.
% \begin{macrocode}
\def\hyxmp@set@pdfx@major@ii#1!{%
- \edef\hyxmp@pdfx@major{\the\@tempcnta}%
+ \edef\hyxmp@pdfx@major{\the\@hyxmp@count}%
}
% \end{macrocode}
% \end{macro}
@@ -2719,6 +2769,9 @@ sub mycmd {
%
% \begin{macro}{\hyxmp@ProcessKeyvalOptions}
% \changes{v2.0}{2012/09/05}{Added this macro}
+% \changes{v5.11}{2022/10/02}{Bug fix: Restore
+% \protect\cs{ProcessKeyvalOptions} after first use. Thanks to
+% Ulrike Fischer for the bug report}
% \begin{macro}{\ProcessKeyvalOptions}
% \changes{v2.0}{2012/09/05}{Added this macro}
% Redefine \pkgname{kvoptions}'s |\ProcessOptions| command to invoke
@@ -2726,6 +2779,7 @@ sub mycmd {
% \begin{macrocode}
\let\hyxmp@ProcessKeyvalOptions=\ProcessKeyvalOptions
\renewcommand*{\ProcessKeyvalOptions}{%
+ \global\let\ProcessKeyvalOptions=\hyxmp@ProcessKeyvalOptions
\hyxmp@redefine@Hyp
\hyxmp@ProcessKeyvalOptions
}
@@ -3183,17 +3237,6 @@ sub mycmd {
% \end{macrocode}
% \end{macro}
%
-% \pkgname{hyperxmp} can directly query the page count using
-% \LuaTeX\ features. When any other \TeX\ engine is used,
-% \pkgname{hyperxmp} employs the \pkgname{totpages} package to help
-% tally the total number of pages.
-% \begin{macrocode}
-\ifLuaTeX
-\else
- \RequirePackage{totpages}
-\fi
-% \end{macrocode}
-%
% Determine the size of the output file from the \emph{previous} run of
% \LuaLaTeX\@. This action has to be performed before the
% |\begin{document}| because at that point the size of the output file
@@ -3331,25 +3374,16 @@ end
% \begin{macrocode}
\newcommand*{\hyxmp@query@self}{%
% \end{macrocode}
-% \LuaTeX\ exposes via \texttt{status.total\_pages} the number of pages
-% written. We use this mechanism when available to assign
-% \cs{@pdfnumpages}. To finalize the page count we first issue a
-% \cs{clearpage}.
+% \LaTeX's |totalpages| counter tracks the number of pages written. We
+% use this mechanism to assign \cs{@pdfnumpages}.
+% \changes{v5.11}{2022/10/16}{Use \protect\cs{thetotalpages} to compute
+% the page count in an engine-independent manner. Thanks to Ulrike
+% Fischer for recommending this mechanism}
% \begin{macrocode}
- \ifLuaTeX
- \@if@def@and@nonempty{@pdfnumpages}{%
- }{%
- \clearpage
- \xdef\@pdfnumpages{\luadirect{tex.print(status.total_pages)}}%
- }%
- \else
-% \end{macrocode}
-% Without \LuaTeX\ we rely on the \pkgname{totpages} package to help
-% count the number of pages. This may require an additional run of
-% \LaTeX, but the user will be notified in that case.
-% \begin{macrocode}
- \pdfstringdef\@pdfnumpages{\ref*{TotPages}}%
- \fi
+ \@if@def@and@nonempty{@pdfnumpages}{%
+ }{%
+ \xdef\@pdfnumpages{\thetotalpages}%
+ }%
% \end{macrocode}
% If \optname{pdfbytes} hasn't been set, set it to the output file's size
% from the previous run.
@@ -4134,19 +4168,19 @@ end
% midnight or the timezone so we omit those fields when defining
% macro~|#1|.
% \begin{macrocode}
- \@tempcnta=\time
- \divide\@tempcnta by 60
- \ifnum\@tempcnta<10
- \xdef#1{#1T0\the\@tempcnta}%
+ \@hyxmp@count=\time
+ \divide\@hyxmp@count by 60
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1T0\the\@hyxmp@count}%
\else
- \xdef#1{#1T\the\@tempcnta}%
+ \xdef#1{#1T\the\@hyxmp@count}%
\fi
- \multiply\@tempcnta by -60
- \advance\@tempcnta by \time
- \ifnum\@tempcnta<10
- \xdef#1{#1:0\the\@tempcnta}%
+ \multiply\@hyxmp@count by -60
+ \advance\@hyxmp@count by \time
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1:0\the\@hyxmp@count}%
\else
- \xdef#1{#1:\the\@tempcnta}%
+ \xdef#1{#1:\the\@hyxmp@count}%
\fi
\xdef#1{#1Z}%
}
@@ -4923,14 +4957,14 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% \xmpprop{xmpMM:InstanceID} fields.
%
% \begin{macro}{\hyxmp@modulo@a}
-% Replace the contents of |\@tempcnta| with the contents modulo~|#1|.
+% Replace the contents of |\@hyxmp@count| with the contents modulo~|#1|.
% Note that |\@tempcntb| is overwritten in the process.
% \begin{macrocode}
\def\hyxmp@modulo@a#1{%
- \@tempcntb=\@tempcnta
+ \@tempcntb=\@hyxmp@count
\divide\@tempcntb by #1
\multiply\@tempcntb by #1
- \advance\@tempcnta by -\@tempcntb
+ \advance\@hyxmp@count by -\@tempcntb
}
% \end{macrocode}
% \end{macro}
@@ -4952,7 +4986,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% of text.
% \begin{macrocode}
\def\hyxmp@seed@rng#1{%
- \@tempcnta=\hyxmp@big@prime
+ \@hyxmp@count=\hyxmp@big@prime
\futurelet\hyxmp@one@token\hyxmp@seed@rng@i#1\@empty
}
% \end{macrocode}
@@ -4963,8 +4997,8 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% \begin{macro}{\hyxmp@one@token}
% \begin{macro}{\next}
% Do all of the work for |\hyxmp@seed@rng|. For each character code $c$
-% of the input text, assign $\mathtt{\string\@tempcnta} \leftarrow 3
-% \cdot \mathtt{\string\@tempcnta} + c
+% of the input text, assign $\mathtt{\string\@hyxmp@count} \leftarrow 3
+% \cdot \mathtt{\string\@hyxmp@count} + c
% \pmod{\mathtt{\string\hyxmp@big@prime}}$.
% \begin{macrocode}
\def\hyxmp@seed@rng@i{%
@@ -4972,8 +5006,8 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\let\next=\relax
\else
\def\next##1{%
- \multiply\@tempcnta by 3
- \advance\@tempcnta by `##1
+ \multiply\@hyxmp@count by 3
+ \advance\@hyxmp@count by `##1
\hyxmp@modulo@a{\hyxmp@big@prime}%
\futurelet\hyxmp@one@token\hyxmp@seed@rng@i
}%
@@ -4991,15 +5025,15 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% sequence. Specifically, we assign $\mathtt{\string\hyxmp@rand@num}
% \leftarrow 3 \cdot \mathtt{\string\hyxmp@rand@num} +
% \mathtt{\string\hyxmp@big@prime@ii}
-% \pmod{\mathtt{\string\hyxmp@big@prime}}$. Note that both |\@tempcnta|
+% \pmod{\mathtt{\string\hyxmp@big@prime}}$. Note that both |\@hyxmp@count|
% and |\@tempcntb| are overwritten in the process.
% \begin{macrocode}
\def\hyxmp@set@rand@num{%
- \@tempcnta=\hyxmp@rand@num
- \multiply\@tempcnta by 3
- \advance\@tempcnta by \hyxmp@big@prime@ii
+ \@hyxmp@count=\hyxmp@rand@num
+ \multiply\@hyxmp@count by 3
+ \advance\@hyxmp@count by \hyxmp@big@prime@ii
\hyxmp@modulo@a{\hyxmp@big@prime}%
- \xdef\hyxmp@rand@num{\the\@tempcnta}%
+ \xdef\hyxmp@rand@num{\the\@hyxmp@count}%
}
% \end{macrocode}
% \end{macro}
@@ -5007,21 +5041,21 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
%
% \begin{macro}{\hyxmp@append@hex}
% Append a randomly selected hexadecimal digit to macro~|#1|. Note that
-% both |\@tempcnta| and |\@tempcntb| are overwritten in the process.
+% both |\@hyxmp@count| and |\@tempcntb| are overwritten in the process.
% \begin{macrocode}
\def\hyxmp@append@hex#1{%
\hyxmp@set@rand@num
- \@tempcnta=\hyxmp@rand@num
+ \@hyxmp@count=\hyxmp@rand@num
\hyxmp@modulo@a{16}%
- \ifnum\@tempcnta<10
- \xdef#1{#1\the\@tempcnta}%
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1\the\@hyxmp@count}%
\else
% \end{macrocode}
% There \emph{must} be a better way to handle the numbers~10--15 than
% with |\ifcase|.
% \begin{macrocode}
- \advance\@tempcnta by -10
- \ifcase\@tempcnta
+ \advance\@hyxmp@count by -10
+ \ifcase\@hyxmp@count
\xdef#1{#1a}%
\or\xdef#1{#1b}%
\or\xdef#1{#1c}%
@@ -5063,7 +5097,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% in which each ``\textit{x}'' is a lowercase hexadecimal digit and
% ``\textit{y}'' is one of ``|8|'', ``|9|'', ``|a|'', or~``|b|''. We
% assume that the random-number generator is already seeded. Note that
-% |\hyxmp@create@uuid| overwrites both |\@tempcnta| and |\@tempcntb|.
+% |\hyxmp@create@uuid| overwrites both |\@hyxmp@count| and |\@tempcntb|.
% \changes{v2.4}{2014/01/02}{Modified this macro to produce a proper
% version~4 (random or pseudorandom) \protect\acro{UUID}}
% \begin{macrocode}
@@ -5080,9 +5114,9 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% Randomly select one of ``|8|'', ``|9|'', ``|a|'', or~``|b|''.
% \begin{macrocode}
\hyxmp@set@rand@num
- \@tempcnta=\hyxmp@rand@num
+ \@hyxmp@count=\hyxmp@rand@num
\hyxmp@modulo@a{4}%
- \ifcase\@tempcnta
+ \ifcase\@hyxmp@count
\g@addto@macro#1{8}%
\or\g@addto@macro#1{9}%
\or\g@addto@macro#1{a}%
@@ -5109,7 +5143,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\newcommand*{\hyxmp@def@DocumentID}{%
\edef\hyxmp@seed@string{\hyxmp@jobname:\@pdftitle:\@pdfauthor:}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
- \edef\hyxmp@rand@num{\the\@tempcnta}%
+ \edef\hyxmp@rand@num{\the\@hyxmp@count}%
\hyxmp@create@uuid\hyxmp@DocumentID
}
% \end{macrocode}
@@ -5138,7 +5172,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\hyxmp@jobname:\@pdftitle:\@pdfauthor:\hyxmp@today@xmp:\hyxmp@seed@string
}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
- \edef\hyxmp@rand@num{\the\@tempcnta}%
+ \edef\hyxmp@rand@num{\the\@hyxmp@count}%
\hyxmp@create@uuid\hyxmp@InstanceID
}
% \end{macrocode}
@@ -5196,16 +5230,16 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
% \begin{macrocode}
\newcommand*{\hyxmp@add@to@xml}[1]{%
\bgroup
- \@tempcnta=0
+ \@hyxmp@count=0
\ifhyxmp@unicodetex
\@tempcntb=65536%
\else
\@tempcntb=256%
\fi
\loop
- \lccode\@tempcnta=\@tempcnta
- \advance\@tempcnta by 1
- \ifnum\@tempcnta<\@tempcntb
+ \lccode\@hyxmp@count=\@hyxmp@count
+ \advance\@hyxmp@count by 1
+ \ifnum\@hyxmp@count<\@tempcntb
\repeat
\lccode`\_=`\ \relax
\lccode`\^^C=`\,\relax
@@ -6011,14 +6045,14 @@ ______</dc:#2>^^J%
% \changes{v5.0}{2020/02/26}{Added this macro}
% \begin{macrocode}
\newcommand*{\hyxmp@pdfx@id@schema}{%
- \@tempcnta=0\hyxmp@pdfx@major\relax
- \ifnum\@tempcnta=0
+ \@hyxmp@count=0\hyxmp@pdfx@major\relax
+ \ifnum\@hyxmp@count=0
\else
- \ifnum\@tempcnta=1
+ \ifnum\@hyxmp@count=1
\hyxmp@add@simple{pdfx:GTS_PDFXVersion}{PDF/X-1:2001}%
\hyxmp@add@simple{pdfx:GTS_PDFXConformance}{\@pdfxstandard}%
\else
- \ifnum\@tempcnta<4
+ \ifnum\@hyxmp@count<4
\hyxmp@add@simple{pdfx:GTS_PDFXVersion}{\@pdfxstandard}%
\else
\hyxmp@add@simple{pdfxid:GTS_PDFXVersion}{\@pdfxstandard}%
@@ -6629,8 +6663,8 @@ ______________________</rdf:li>^^J%
% \end{macrocode}
% Declare the schema used in \PDFstd{X}{4}{}{} and later versions.
% \begin{macrocode}
- \@tempcnta=0\hyxmp@pdfx@major\relax
- \ifnum\@tempcnta>3
+ \@hyxmp@count=0\hyxmp@pdfx@major\relax
+ \ifnum\@hyxmp@count>3
\hyxmp@begin@ext@decl
{PDF/X ID Schema}%
{pdfxid}%
@@ -6958,7 +6992,27 @@ _____________________xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEven
_____________________xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/"^^J%
_____________________xmlns:pdfuaid="http://www.aiim.org/pdfua/ns/id/"^^J%
_____________________xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"^^J%
+ }%
+% \end{macrocode}
+% We make one exception to the rule of including every namespace we can
+% potentially use: We don't define the \texttt{pdfxid} namespace unless
+% the \acro{PDF/X} version (specified by the \optname{pdfxstandard})
+% option is~4 or greater. Otherwise, Adobe Acrobat---at least Adobe
+% Acrobat DC 2020---alters the way it displays color. (I believe it
+% renders color in a printer gamut instead of a screen gamut.)
+% \changes{v5.10}{2020/01/05}{Include the \string\texttt{pdfxid} namespace
+% only if the \protect\acro{PDF/X} version is~4 or greater. Thanks to
+% John Lienhard for the bug report}
+% \begin{macrocode}
+ \ifnum0\hyxmp@pdfx@major>3
+ \hyxmp@add@to@xml{%
_____________________xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"^^J%
+ }%
+ \fi
+% \end{macrocode}
+% Revert to ``include every namespace'' mode.
+% \begin{macrocode}
+ \hyxmp@add@to@xml{%
_____________________xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"^^J%
_____________________xmlns:jav="http://www.niso.org/schemas/jav/1.0/"^^J%
_____________________xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"^^J%
@@ -7177,7 +7231,7 @@ __</rdf:RDF>^^J%
<<
/Type /Metadata
/Subtype /XML
- /Length \the\@tempcnta
+ /Length \the\@hyxmp@count
>>
stream^^J\hyxmp@xml endstream%
}%
@@ -7191,7 +7245,7 @@ __</rdf:RDF>^^J%
% \end{macro}
%
% \begin{macro}{\hyxmp@string@len}
-% Set |\@tempcnta| to the number of characters in a given string~(|#1|).
+% Set |\@hyxmp@count| to the number of characters in a given string~(|#1|).
% The approach is first to tally the number of space characters then to
% tally the number of non-space characters. While this is rather
% sloppy I haven't found a better way to achieve the same effect,
@@ -7199,7 +7253,7 @@ __</rdf:RDF>^^J%
% assigned their category codes.
% \begin{macrocode}
\newcommand*{\hyxmp@string@len}[1]{%
- \@tempcnta=0
+ \@hyxmp@count=0
\expandafter\hyxmp@count@spaces#1 {} %
\expandafter\hyxmp@count@non@spaces#1{}%
}
@@ -7214,9 +7268,9 @@ __</rdf:RDF>^^J%
\def\hyxmp@count@spaces#1 {%
\def\hyxmp@one@token{#1}%
\ifx\hyxmp@one@token\@empty
- \advance\@tempcnta by -1
+ \advance\@hyxmp@count by -1
\else
- \advance\@tempcnta by 1
+ \advance\@hyxmp@count by 1
\expandafter\hyxmp@count@spaces
\fi
}
@@ -7233,7 +7287,7 @@ __</rdf:RDF>^^J%
\def\hyxmp@one@token{#1}%
\ifx\hyxmp@one@token\@empty
\else
- \advance\@tempcnta by 1
+ \advance\@hyxmp@count by 1
\expandafter\hyxmp@count@non@spaces
\fi
}
diff --git a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.ins b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.ins
index 81db9d155a9..80abd7b3c31 100644
--- a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.ins
+++ b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.ins
@@ -1,5 +1,5 @@
%%
-%% Copyright (C) 2011-2020 by Scott Pakin <scott+hyxmp@pakin.org>
+%% Copyright (C) 2011-2023 by Scott Pakin <scott+hyxmp@pakin.org>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3c of this license
@@ -21,7 +21,7 @@
This is a generated file.
-Copyright (C) 2011-2020 by Scott Pakin <scott+hyxmp@pakin.org>
+Copyright (C) 2011-2023 by Scott Pakin <scott+hyxmp@pakin.org>
This file may be distributed and/or modified under the conditions of
the LaTeX Project Public License, either version 1.3c of this license
diff --git a/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty b/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
index 0c4ca2de09d..6f7c7756b9a 100644
--- a/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
+++ b/Master/texmf-dist/tex/latex/hyperxmp/hyperxmp.sty
@@ -8,7 +8,7 @@
%%
%% This is a generated file.
%%
-%% Copyright (C) 2011-2020 by Scott Pakin <scott+hyxmp@pakin.org>
+%% Copyright (C) 2011-2023 by Scott Pakin <scott+hyxmp@pakin.org>
%%
%% This file may be distributed and/or modified under the conditions of
%% the LaTeX Project Public License, either version 1.3c of this license
@@ -22,14 +22,24 @@
%%
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{hyperxmp}
- [2020/11/22 v5.9 Store hyperref metadata in XMP format]
+ [2022/10/16 v5.11 Store hyperref metadata in XMP format]
+\IfDocumentMetadataTF{%
+ \PackageWarning
+ {hyperxmp}
+ {Disabling hyperxmp because it is incompatible with PDF management}
+}{}
+\IfDocumentMetadataTF{\endinput}{}
\edef\hyxmp@dq@code{\the\catcode`\"}
\catcode`\"=12
-\@ifundefined{AtEndDocument}{%
- \RequirePackage{atenddvi}
- \let\hyxmp@at@end=\AtEndDvi
+\@ifundefined{AddToHook}{%
+ \@ifundefined{AtEndDocument}{%
+ \RequirePackage{atenddvi}
+ \let\hyxmp@at@end=\AtEndDvi
+ }{%
+ \let\hyxmp@at@end=\AtEndDocument
+ }
}{%
- \let\hyxmp@at@end=\AtEndDocument
+ \def\hyxmp@at@end{\AddToHook{shipout/lastpage}}
}
\def\hyxmp@set@jobname#1\relax{%
\@ifnextchar"{\hyxmp@set@jobname@dbl}{\hyxmp@set@jobname@plain}#1\relax
@@ -101,10 +111,11 @@
\PackageWarning{hyperxmp}{pdfapart and pdfuapart must be numeric}%
}%
}
+\newcount\@hyxmp@count
\def\@pdfapart{}
\define@key{Hyp}{pdfapart}{%
- \afterassignment\hyxmp@no@bad@parts\@tempcnta=0#1\relax
- \hyxmp@pdfstringdef\@pdfapart{\the\@tempcnta}%
+ \afterassignment\hyxmp@no@bad@parts\@hyxmp@count=0#1\relax
+ \hyxmp@pdfstringdef\@pdfapart{\the\@hyxmp@count}%
}
\def\@pdfaconformance{}
\define@key{Hyp}{pdfaconformance}{%
@@ -112,16 +123,16 @@
}
\def\@pdfuapart{}
\define@key{Hyp}{pdfuapart}{%
- \afterassignment\hyxmp@no@bad@parts\@tempcnta=0#1\relax
- \hyxmp@pdfstringdef\@pdfuapart{\the\@tempcnta}%
+ \afterassignment\hyxmp@no@bad@parts\@hyxmp@count=0#1\relax
+ \hyxmp@pdfstringdef\@pdfuapart{\the\@hyxmp@count}%
}
\newcommand*{\hyxmp@set@pdfx@major}[1]{\hyxmp@set@pdfx@major@i#1!}
\def\hyxmp@set@pdfx@major@i PDF/X-{%
\afterassignment\hyxmp@set@pdfx@major@ii
- \@tempcnta=%
+ \@hyxmp@count=%
}
\def\hyxmp@set@pdfx@major@ii#1!{%
- \edef\hyxmp@pdfx@major{\the\@tempcnta}%
+ \edef\hyxmp@pdfx@major{\the\@hyxmp@count}%
}
\newcommand*\hyxmp@check@std[2]{%
\ifthenelse{\equal{#1}{#2}}%
@@ -299,6 +310,7 @@
}
\let\hyxmp@ProcessKeyvalOptions=\ProcessKeyvalOptions
\renewcommand*{\ProcessKeyvalOptions}{%
+ \global\let\ProcessKeyvalOptions=\hyxmp@ProcessKeyvalOptions
\hyxmp@redefine@Hyp
\hyxmp@ProcessKeyvalOptions
}
@@ -501,10 +513,6 @@
\hyxmp@query@self
}
\ifLuaTeX
-\else
- \RequirePackage{totpages}
-\fi
-\ifLuaTeX
\begin{luacode*}
function get_pdf_size (bname)
local odir = ""
@@ -537,15 +545,10 @@ end
}%
\fi
\newcommand*{\hyxmp@query@self}{%
- \ifLuaTeX
- \@if@def@and@nonempty{@pdfnumpages}{%
- }{%
- \clearpage
- \xdef\@pdfnumpages{\luadirect{tex.print(status.total_pages)}}%
- }%
- \else
- \pdfstringdef\@pdfnumpages{\ref*{TotPages}}%
- \fi
+ \@if@def@and@nonempty{@pdfnumpages}{%
+ }{%
+ \xdef\@pdfnumpages{\thetotalpages}%
+ }%
\hyxmp@use@first@valid{pdfbytes}{\@pdfbytes}{%
\hyxmp@prev@pdf@size
}%
@@ -820,19 +823,19 @@ end
\else
\xdef#1{#1-\the\day}%
\fi
- \@tempcnta=\time
- \divide\@tempcnta by 60
- \ifnum\@tempcnta<10
- \xdef#1{#1T0\the\@tempcnta}%
+ \@hyxmp@count=\time
+ \divide\@hyxmp@count by 60
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1T0\the\@hyxmp@count}%
\else
- \xdef#1{#1T\the\@tempcnta}%
+ \xdef#1{#1T\the\@hyxmp@count}%
\fi
- \multiply\@tempcnta by -60
- \advance\@tempcnta by \time
- \ifnum\@tempcnta<10
- \xdef#1{#1:0\the\@tempcnta}%
+ \multiply\@hyxmp@count by -60
+ \advance\@hyxmp@count by \time
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1:0\the\@hyxmp@count}%
\else
- \xdef#1{#1:\the\@tempcnta}%
+ \xdef#1{#1:\the\@hyxmp@count}%
\fi
\xdef#1{#1Z}%
}
@@ -1142,15 +1145,15 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\setkeys{hyxmp@LA}{#2}%
}
\def\hyxmp@modulo@a#1{%
- \@tempcntb=\@tempcnta
+ \@tempcntb=\@hyxmp@count
\divide\@tempcntb by #1
\multiply\@tempcntb by #1
- \advance\@tempcnta by -\@tempcntb
+ \advance\@hyxmp@count by -\@tempcntb
}
\def\hyxmp@big@prime{536870923}
\def\hyxmp@big@prime@ii{536870027}
\def\hyxmp@seed@rng#1{%
- \@tempcnta=\hyxmp@big@prime
+ \@hyxmp@count=\hyxmp@big@prime
\futurelet\hyxmp@one@token\hyxmp@seed@rng@i#1\@empty
}
\def\hyxmp@seed@rng@i{%
@@ -1158,8 +1161,8 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\let\next=\relax
\else
\def\next##1{%
- \multiply\@tempcnta by 3
- \advance\@tempcnta by `##1
+ \multiply\@hyxmp@count by 3
+ \advance\@hyxmp@count by `##1
\hyxmp@modulo@a{\hyxmp@big@prime}%
\futurelet\hyxmp@one@token\hyxmp@seed@rng@i
}%
@@ -1167,21 +1170,21 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\next
}
\def\hyxmp@set@rand@num{%
- \@tempcnta=\hyxmp@rand@num
- \multiply\@tempcnta by 3
- \advance\@tempcnta by \hyxmp@big@prime@ii
+ \@hyxmp@count=\hyxmp@rand@num
+ \multiply\@hyxmp@count by 3
+ \advance\@hyxmp@count by \hyxmp@big@prime@ii
\hyxmp@modulo@a{\hyxmp@big@prime}%
- \xdef\hyxmp@rand@num{\the\@tempcnta}%
+ \xdef\hyxmp@rand@num{\the\@hyxmp@count}%
}
\def\hyxmp@append@hex#1{%
\hyxmp@set@rand@num
- \@tempcnta=\hyxmp@rand@num
+ \@hyxmp@count=\hyxmp@rand@num
\hyxmp@modulo@a{16}%
- \ifnum\@tempcnta<10
- \xdef#1{#1\the\@tempcnta}%
+ \ifnum\@hyxmp@count<10
+ \xdef#1{#1\the\@hyxmp@count}%
\else
- \advance\@tempcnta by -10
- \ifcase\@tempcnta
+ \advance\@hyxmp@count by -10
+ \ifcase\@hyxmp@count
\xdef#1{#1a}%
\or\xdef#1{#1b}%
\or\xdef#1{#1c}%
@@ -1210,9 +1213,9 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\hyxmp@append@hex@iii#1%
\g@addto@macro#1{-}%
\hyxmp@set@rand@num
- \@tempcnta=\hyxmp@rand@num
+ \@hyxmp@count=\hyxmp@rand@num
\hyxmp@modulo@a{4}%
- \ifcase\@tempcnta
+ \ifcase\@hyxmp@count
\g@addto@macro#1{8}%
\or\g@addto@macro#1{9}%
\or\g@addto@macro#1{a}%
@@ -1227,7 +1230,7 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\newcommand*{\hyxmp@def@DocumentID}{%
\edef\hyxmp@seed@string{\hyxmp@jobname:\@pdftitle:\@pdfauthor:}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
- \edef\hyxmp@rand@num{\the\@tempcnta}%
+ \edef\hyxmp@rand@num{\the\@hyxmp@count}%
\hyxmp@create@uuid\hyxmp@DocumentID
}
\newcommand*{\hyxmp@def@InstanceID}{%
@@ -1236,21 +1239,21 @@ ______<#3 xml:lang="#1">\hyxmp@xmlified</#3>^^J%
\hyxmp@jobname:\@pdftitle:\@pdfauthor:\hyxmp@today@xmp:\hyxmp@seed@string
}%
\expandafter\hyxmp@seed@rng\expandafter{\hyxmp@seed@string}%
- \edef\hyxmp@rand@num{\the\@tempcnta}%
+ \edef\hyxmp@rand@num{\the\@hyxmp@count}%
\hyxmp@create@uuid\hyxmp@InstanceID
}
\newcommand*{\hyxmp@add@to@xml}[1]{%
\bgroup
- \@tempcnta=0
+ \@hyxmp@count=0
\ifhyxmp@unicodetex
\@tempcntb=65536%
\else
\@tempcntb=256%
\fi
\loop
- \lccode\@tempcnta=\@tempcnta
- \advance\@tempcnta by 1
- \ifnum\@tempcnta<\@tempcntb
+ \lccode\@hyxmp@count=\@hyxmp@count
+ \advance\@hyxmp@count by 1
+ \ifnum\@hyxmp@count<\@tempcntb
\repeat
\lccode`\_=`\ \relax
\lccode`\^^C=`\,\relax
@@ -1527,14 +1530,14 @@ ______</dc:#2>^^J%
\hyxmp@add@simple{pdfuaid:part}{\@pdfuapart}%
}
\newcommand*{\hyxmp@pdfx@id@schema}{%
- \@tempcnta=0\hyxmp@pdfx@major\relax
- \ifnum\@tempcnta=0
+ \@hyxmp@count=0\hyxmp@pdfx@major\relax
+ \ifnum\@hyxmp@count=0
\else
- \ifnum\@tempcnta=1
+ \ifnum\@hyxmp@count=1
\hyxmp@add@simple{pdfx:GTS_PDFXVersion}{PDF/X-1:2001}%
\hyxmp@add@simple{pdfx:GTS_PDFXConformance}{\@pdfxstandard}%
\else
- \ifnum\@tempcnta<4
+ \ifnum\@hyxmp@count<4
\hyxmp@add@simple{pdfx:GTS_PDFXVersion}{\@pdfxstandard}%
\else
\hyxmp@add@simple{pdfxid:GTS_PDFXVersion}{\@pdfxstandard}%
@@ -1842,8 +1845,8 @@ ______________________</rdf:li>^^J%
{Conformance level of PDF/X standard}%
\hyxmp@end@ext@decl
\fi
- \@tempcnta=0\hyxmp@pdfx@major\relax
- \ifnum\@tempcnta>3
+ \@hyxmp@count=0\hyxmp@pdfx@major\relax
+ \ifnum\@hyxmp@count>3
\hyxmp@begin@ext@decl
{PDF/X ID Schema}%
{pdfxid}%
@@ -2055,7 +2058,13 @@ _____________________xmlns:stEvt="http://ns.adobe.com/xap/1.0/sType/ResourceEven
_____________________xmlns:pdfaid="http://www.aiim.org/pdfa/ns/id/"^^J%
_____________________xmlns:pdfuaid="http://www.aiim.org/pdfua/ns/id/"^^J%
_____________________xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"^^J%
+ }%
+ \ifnum0\hyxmp@pdfx@major>3
+ \hyxmp@add@to@xml{%
_____________________xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"^^J%
+ }%
+ \fi
+ \hyxmp@add@to@xml{%
_____________________xmlns:prism="http://prismstandard.org/namespaces/basic/3.0/"^^J%
_____________________xmlns:jav="http://www.niso.org/schemas/jav/1.0/"^^J%
_____________________xmlns:xmpTPg="http://ns.adobe.com/xap/1.0/t/pg/"^^J%
@@ -2180,7 +2189,7 @@ __</rdf:RDF>^^J%
<<
/Type /Metadata
/Subtype /XML
- /Length \the\@tempcnta
+ /Length \the\@hyxmp@count
>>
stream^^J\hyxmp@xml endstream%
}%
@@ -2191,16 +2200,16 @@ __</rdf:RDF>^^J%
}%
}
\newcommand*{\hyxmp@string@len}[1]{%
- \@tempcnta=0
+ \@hyxmp@count=0
\expandafter\hyxmp@count@spaces#1 {} %
\expandafter\hyxmp@count@non@spaces#1{}%
}
\def\hyxmp@count@spaces#1 {%
\def\hyxmp@one@token{#1}%
\ifx\hyxmp@one@token\@empty
- \advance\@tempcnta by -1
+ \advance\@hyxmp@count by -1
\else
- \advance\@tempcnta by 1
+ \advance\@hyxmp@count by 1
\expandafter\hyxmp@count@spaces
\fi
}
@@ -2208,7 +2217,7 @@ __</rdf:RDF>^^J%
\def\hyxmp@one@token{#1}%
\ifx\hyxmp@one@token\@empty
\else
- \advance\@tempcnta by 1
+ \advance\@hyxmp@count by 1
\expandafter\hyxmp@count@non@spaces
\fi
}