summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-09-25 21:40:31 +0000
committerKarl Berry <karl@freefriends.org>2014-09-25 21:40:31 +0000
commit1774462ee3e140412a989f454c5f8763ba6e7758 (patch)
tree0480e5faa965a566e2988c7727131a3ddc9e4617 /Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
parentd2eaed0a00c74cf42ca7420db4facc90d91b6b75 (diff)
hyperxmp (25sep14)
git-svn-id: svn://tug.org/texlive/trunk@35258 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx')
-rw-r--r--Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx61
1 files changed, 54 insertions, 7 deletions
diff --git a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
index 0a67e81be5c..e10d74b757d 100644
--- a/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
+++ b/Master/texmf-dist/source/latex/hyperxmp/hyperxmp.dtx
@@ -22,7 +22,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{hyperxmp}
%<*package>
- [2014/06/19 v2.5 Store hyperref metadata in XMP format]
+ [2014/09/24 v2.6 Store hyperref metadata in XMP format]
%</package>
%
%<*driver>
@@ -81,7 +81,7 @@
%</driver>
% \fi
%
-% \CheckSum{1461}
+% \CheckSum{1475}
%
% \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
@@ -114,6 +114,8 @@
% Identification schema, as requested by Florian Breitwieser}
% \changes{v2.5}{2014/06/19}{Enabled ``\texttt{\string\string\string\_}''
% to work within email addresses, as requested by Leonid Sinev}
+% \changes{v2.6}{2014/09/24}{Added support for a new \string\optname{pdfdate}
+% key to explicitly specify the document date (and optionally time)}
%
% \GetFileInfo{hyperxmp.dtx}
%
@@ -190,6 +192,9 @@
% ^^A Pack figures a bit tighter onto the page.
% \renewcommand{\floatpagefraction}{0.8}
%
+% ^^A Help \pageref refer to arbitrary content.
+% \newcounter{pagelabel}
+%
% \maketitle
% \sloppy
%
@@ -347,6 +352,7 @@
% \item \optname{pdfcontactregion}
% \item \optname{pdfcontacturl}
% \item \optname{pdfcopyright}
+% \item \optname{pdfdate}
% \item \optname{pdflicenseurl}
% \item \optname{pdfmetalang}
% \end{itemize}
@@ -368,9 +374,24 @@
% \optname{pdfcontacturl} is the contact's \acro{URL} (or multiple,
% comma-separated \acro{URL}s).
%
-% \optname{pdfcopyright} defines the copyright text.
+% \optname{pdfcopyright} defines the copyright text. \optname{pdfdate}
+% specifies the document date. It is analogous to the \LaTeX\ |\date|
+% command, and, like |\date|, defaults to the date the document was
+% built. However, \optname{pdfdate} must be specified in
+% \textsc{yyyy}|-|\textsc{mm}|-|\textsc{dd}|T|hh|:|mm|:|ss|.|ff|+|\textsc{tt}|:|tt
+% format as per the W3C's recommendation~\cite{Wolf1997:date-time}. For
+% example, 14~hours, 15~minutes, 9.26~seconds past midnight
+% U.S. Mountain Daylight Time (UTC-6) on the 23rd day of September in the
+% year~2014 should be written as \texttt{2014-09-23T14:15:09.26-06:00}.
+% This can be truncated to \texttt{2014-09-23T14:15:09-06:00} or
+% \texttt{2014-09-23T14:15-06:00} or \texttt{2014-09-23} or
+% \texttt{2014-09} or \texttt{2014} but no other subsets.
+% \pkgname{hyperxmp} does not validate \optname{pdfdate}'s argument, but
+% an invalid format may confuse a \acro{PDF} reader.
+%
% \optname{pdflicenseurl} identifies a \acro{URL} that points to the
-% document's license agreement. \optname{pdfmetalang} indicates the
+% document's license agreement.
+% \optname{pdfmetalang} indicates the
% natural language in which the metadata is written, typically as an
% \acro{IETF} language tag~\cite{IANA2011:lang-tags}, for example,
% ``|en|'' for English, ``|en-US|'' for specifically United States
@@ -393,6 +414,7 @@
% options that \pkgname{hyperxmp} recognizes:
%
% \Needspace{4\baselineskip}
+% \refstepcounter{pagelabel}
% \label{page:begin-sample-doc}
% \begin{verbatim}
% \documentclass{article}
@@ -402,12 +424,14 @@
% On a heuristic viewpoint concerning the production and
% transformation of light}
% \author{Albert Einstein}
+% \date{March 17, 1905}
% \hypersetup{%
% pdftitle={%
% On a heuristic viewpoint concerning the production and
% transformation of light},
% pdfauthor={Albert Einstein},
% pdfauthortitle={Technical Assistant, Level III},
+% pdfdate={1905-03-17},
% pdfcopyright={Copyright (C) 1905, Albert Einstein},
% pdfsubject={photoelectric effect},
% pdfkeywords={energy quanta, Hertz effect, quantum physics},
@@ -434,6 +458,7 @@
% processes in so-called empty space\dots
% \end{document}
% \end{verbatim}
+% \refstepcounter{pagelabel}
% \label{page:end-sample-doc}
%
% Compile the document to \acro{PDF} using any of the following
@@ -714,6 +739,13 @@
% March~20, 2008.
% \newblock Available from
% \url{http://www.pdfa.org/wp-content/uploads/2011/08/tn0009_xmp_extension_schemas_in_pdfa-1_2008-03-20.pdf}.
+%
+% \bibitem{Wolf1997:date-time}
+% Misha Wolf and Charles Wicksteed.
+% \newblock Date and time formats.
+% \newblock Note NOTE-datetime, World Wide Web Consortium (W3C), September~15,
+% 1997.
+% \newblock Available from \url{http://www.w3.org/TR/NOTE-datetime}.
% \end{thebibliography}
% }
%
@@ -821,6 +853,14 @@
% \end{macro}
% \end{macro}
%
+% \begin{macro}{\@pdfdatetime}
+% Prepare to store the document's date and (optionally) time.
+% \begin{macrocode}
+\def\@pdfdatetime{}
+\define@key{Hyp}{pdfdate}{\hyxmp@pdfstringdef\@pdfdatetime{#1}}
+% \end{macrocode}
+% \end{macro}
+%
% \begin{macro}{\@pdfcopyright}
% Prepare to store the document's copyright statement.
% \begin{macrocode}
@@ -983,7 +1023,6 @@
% same thing. This is required in case \pkgname{hyperref} is loaded
% before \pkgname{hyperxmp}.
%
-
% \begin{macro}{\hyxmp@pdfauthor}
% \begin{macro}{\hyxmp@pdfkeywords}
% Prepare to store the name of the author and a list of keywords.
@@ -1152,6 +1191,7 @@
\@pdfcontactregion
\@pdfcontacturl
\@pdfcopyright
+ \@pdfdatetime
\@pdfkeywords
\@pdflang
\@pdflicenseurl
@@ -1196,7 +1236,7 @@ provide metadata values to hyperxmp}%
\let\@pdflang=\@empty
\fi
% \end{macrocode}
-% If the user explicitly specified the language to use for the
+% If the author explicitly specified the language to use for the
% document's metadata, we use that. If not, we use the document
% language, specified to \pkgname{hyperref} with the \optname{pdflang}
% option. If the author did not specify a language, we use |x-default|
@@ -1215,6 +1255,14 @@ provide metadata values to hyperxmp}%
\fi
\hyxmp@xmlify\@pdfmetalang
% \end{macrocode}
+% If the author explicitly specified the document date, override the
+% compilation timestamp with the specified date.
+% \begin{macrocode}
+ \ifx\@pdfdatetime\@empty
+ \else
+ \edef\hyxmp@today{\@pdfdatetime}%
+ \fi
+% \end{macrocode}
% We wait until the end of the document to construct the \acro{XMP}
% packet and write it to the \acro{PDF} document catalog. This gives
% the author ample opportunity to provide metadata to \pkgname{hyperref}
@@ -2890,7 +2938,6 @@ ________________________</rdf:li>^^J%
% \end{macrocode}
% \end{macro}
%
-
% \subsubsection{The PDF/A Identification schema}
% \label{sec:pdfa-id}
%