diff options
author | Karl Berry <karl@freefriends.org> | 2022-05-11 19:52:19 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-05-11 19:52:19 +0000 |
commit | e86d22fd7e27d2b130b3265fd12994e6f5c92d25 (patch) | |
tree | 24a71fe2d0e2a88cba355a73b6e189783ebeaf13 | |
parent | e61a87f98a798358891c94904b47cfef50386581 (diff) |
pdfmanagement-testphase (11may22)
git-svn-id: svn://tug.org/texlive/trunk@63281 c570f23f-e606-0410-a88d-b1316a301751
58 files changed, 370 insertions, 153 deletions
diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/CHANGELOG.md b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/CHANGELOG.md index 2fdc3b7db67..17c90a18aeb 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/CHANGELOG.md +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/CHANGELOG.md @@ -5,6 +5,20 @@ first release 0.95a, 2021-02-23 will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), this project uses date-based 'snapshot' version identifiers. +## [2022-05-11] + +### Added + - allow standard pdf/A-4 + - check requirement for max-pdfversion + - add requirement for Info dictionary + - load tagpdf-base if it exists to provide the + tagging commands. + +### Fixed + - Support/firstaid for colorspace package + - Support for metadata with hyperxmp and xetex + + ## [2022-04-14] ### Fixed - l3pdffield-radiobutton: handling of Opt array. diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/README.md b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/README.md index 8736e0d670d..cd4af9c120d 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/README.md +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/README.md @@ -1,6 +1,6 @@ # LaTeX PDF management testphase bundle -Version: 0.95n, 2022-04-14 +Version: 0.95o, 2022-05-11 This package is used during a test phase to load the new PDF management code of LaTeX. diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/hyperref-generic.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/hyperref-generic.pdf Binary files differindex ece868a47fb..e9b09189edf 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/hyperref-generic.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/hyperref-generic.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3backend-testphase.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3backend-testphase.pdf Binary files differindex 1aa7e6c3db3..66cb1d18025 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3backend-testphase.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3backend-testphase.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfannot.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfannot.pdf Binary files differindex bf4b4345d34..32a8dd415c7 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfannot.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfannot.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfdict.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfdict.pdf Binary files differindex ee05142d228..35b00b95f90 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfdict.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfdict.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-action.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-action.pdf Binary files differindex 64c16f44cc3..86c2d6f1522 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-action.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-action.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-checkbox.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-checkbox.pdf Binary files differindex 97d02b4e2fc..b9d68650c91 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-checkbox.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-checkbox.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-choice.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-choice.pdf Binary files differindex 19932cc3ee3..c0b2c702356 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-choice.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-choice.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-pushbutton.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-pushbutton.pdf Binary files differindex 9cc07a66946..01babfc72d5 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-pushbutton.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-pushbutton.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-radiobutton.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-radiobutton.pdf Binary files differindex 2491fbbfb15..e801b9aa752 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-radiobutton.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-radiobutton.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-textfield.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-textfield.pdf Binary files differindex 2186636cbdd..7fb1850255c 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-textfield.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield-textfield.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield.pdf Binary files differindex 3d4ee635c8a..7c7b1515221 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffield.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffile.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffile.pdf Binary files differindex 4b28a34f38b..d4b1823bf67 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffile.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdffile.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmanagement.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmanagement.pdf Binary files differindex 0f011fc7238..ca57671fa33 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmanagement.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmanagement.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmeta.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmeta.pdf Binary files differindex 871b6574a77..dc32159920a 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmeta.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfmeta.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdftools.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdftools.pdf Binary files differindex 52a5c22d76b..c6ed4aab27d 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdftools.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdftools.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfxform.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfxform.pdf Binary files differindex 0d638715aef..8465858cd8a 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfxform.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/l3pdfxform.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/ltdocinit.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/ltdocinit.pdf Binary files differindex a0e1e9c6c04..f62e767f59f 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/ltdocinit.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/ltdocinit.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/output-patches-tmp-ltx.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/output-patches-tmp-ltx.pdf Binary files differindex 5e80a4566b4..be6f8518c08 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/output-patches-tmp-ltx.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/output-patches-tmp-ltx.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-firstaid.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-firstaid.pdf Binary files differindex e5e921f73a0..b87fed57e98 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-firstaid.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-firstaid.pdf diff --git a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-testphase.pdf b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-testphase.pdf Binary files differindex 30483353946..407934ef9cc 100644 --- a/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-testphase.pdf +++ b/Master/texmf-dist/doc/latex/pdfmanagement-testphase/pdfmanagement-testphase.pdf diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx index 457ea9f1ac2..e53325b8270 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/hyperref-generic.dtx @@ -83,7 +83,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -959,7 +959,7 @@ %<@@=hyp> % \end{macrocode} % \begin{macrocode} -\ProvidesFile{hgeneric-testphase.def}[2022-04-14 v0.95n % +\ProvidesFile{hgeneric-testphase.def}[2022-05-11 v0.95o % generic Hyperref driver for the LaTeX PDF management testphase bundle] \RequirePackage{etoolbox} %why? diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx index 037a8bafc96..01b288ac35d 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3backend-testphase.dtx @@ -45,7 +45,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % @@ -56,27 +56,27 @@ % \begin{macrocode} %<drivers>\ProvidesExplFile %<*dvipdfmx> - {l3backend-testphase-dvipdfmx.def}{2022-04-14}{} + {l3backend-testphase-dvipdfmx.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx} %</dvipdfmx> %<*dvips> - {l3backend-testphase-dvips.def}{2022-04-14}{} + {l3backend-testphase-dvips.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvips} %</dvips> %<*dvisvgm> - {l3backend-testphase-dvisvgm.def}{2022-04-14}{} + {l3backend-testphase-dvisvgm.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm} %</dvisvgm> %<*luatex> - {l3backend-testphase-luatex.def}{2022-04-14}{} + {l3backend-testphase-luatex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)} %</luatex> %<*pdftex> - {l3backend-testphase-pdftex.def}{2022-04-14}{} + {l3backend-testphase-pdftex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)} %</pdftex> %<*xdvipdfmx> - {l3backend-testphase-xetex.def}{2022-04-14}{} + {l3backend-testphase-xetex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX} %</xdvipdfmx> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx index 457064953c2..400491b8b83 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfannot.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -433,7 +433,7 @@ % \begin{macrocode} %<@@=pdfannot> %<*header> -\ProvidesExplPackage{l3pdfannot}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdfannot}{2022-05-11}{0.95o} {PDF-annotations} \RequirePackage{l3pdfdict} %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx index e2ed2c35385..fe33565a75f 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfdict.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -209,7 +209,7 @@ % \begin{macrocode} %<@@=pdfdict> %<*header> -\ProvidesExplPackage{l3pdfdict}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdfdict}{2022-05-11}{0.95o} {Tools for PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx index 55874dd7014..118efcafb27 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-action.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx index 7cd1b617f79..d6e1fb4eeaa 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-checkbox.dtx @@ -65,7 +65,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx index 121c60b7453..f88609ecf35 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-choice.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx index 0cd494954e4..97796862fd5 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-pushbutton.dtx @@ -56,7 +56,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx index a395088e4c5..274aed4db7c 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-radiobutton.dtx @@ -84,7 +84,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx index c0f5e4dbead..289a720df07 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield-textfield.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx index 4fe5de4219b..309b5da3ba4 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffield.dtx @@ -70,7 +70,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -974,7 +974,7 @@ %<*package> %<@@=pdffield> \NeedsTeXFormat{LaTeX2e} -\ProvidesExplPackage{l3pdffield-testphase}{2022-04-14}{0.95n}% +\ProvidesExplPackage{l3pdffield-testphase}{2022-05-11}{0.95o}% {form fields} % \end{macrocode} % \subsection{hyperref specific command} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx index 2adc7fe6174..6a6012cb619 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdffile.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -397,7 +397,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdffile}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdffile}{2022-05-11}{0.95o} {embedding and referencing files in PDF---LaTeX PDF management testphase bundle} \RequirePackage{l3pdftools} %temporarly!! %</header> diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx index fb8ca853e08..d5546bf702f 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmanagement.dtx @@ -58,7 +58,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -360,6 +360,20 @@ % Values added to \texttt{ThisPage} can not be removed. It is not possible to % show the content of this dictionary with \cs{pdfmanagement_show:n}. % \end{function} +% +% \paragraph{Changing the \texttt{/MediaBox}}: It is possible to change +% the \texttt{/MediaBox} of one or more pages by setting it for the \texttt{Page} +% or \texttt{ThisPage} path (using \texttt{Pages} doesn't work, the engines +% overwrite this)---this works even with dvips and allows to create +% pages of different sizes. But you must be careful with the values. +% If you set e.g. with pdflatex \cs{pdfpageheight} to 300bp you get a mediabox of +% |0 0 595 300|, but pdflatex measure from the top and will also move +% the reference point up, so effectivly +% you get the \emph{upper} third of the page. If you set the \texttt{/MediaBox} +% to |0 0 595 300| with \cs{pdfmanagement_add:nnn} you get the \emph{lower} third. +% In general it is better to use only the primitive commands to avoid confusing +% results. +% % \subsubsection{\enquote{Page/Resources}: ExtGState, ColorSpace, Shading, Pattern} % \begin{NOTE}{UF} % Only for pdf/luatex and xdvipdfmx backend- and pdf-code is needed to add values @@ -619,7 +633,7 @@ %<@@=pdfmanagement> %<*header> % -\ProvidesExplPackage{l3pdfmanagement}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdfmanagement}{2022-05-11}{0.95o} {Management of core PDF dictionaries (LaTeX PDF management testphase bundle)} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx index 77b69fad2d2..778141f7ae1 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfmeta.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -222,17 +222,45 @@ % tested from TeX, but in a current LaTeX normally ToUnicode are set for all fonts. % \item[|tagged|] that is set in A-2a and A-3a and means that the pdf must be % tagged. This is currently neither tested not enforced somewhere. +% \item[|Trailer_no_Info|] The \texttt{Info} dictionary +% has been deprecated since quite some time. Metadata should be set with +% XMP-data instead. In PDF A-4 now the \texttt{Info} dictionary +% shall not be present in the trailer dictionary at all +% (unless there exists a PieceInfo entry in the Catalog). And if it is present +% it should only contain the \texttt{/ModDate} entry. The engines +% do not offer currently an option to suppress the dictionary completly, +% one can only give the entries the value null (it only works for all entries +% with lualatex and pdflatex). The next pdflatex will offer \cs{pdfomitinfodict}. +% Until then l3pdfmeta does nothing with this requirement. +% % \end{description} % % \subsubsection{Tests with values and special handlers} % % \begin{description} % -% \item[|min_pdf_version|] stores the minimal PDF version. +% \item[|min_pdf_version|] stores the minimal PDF version needed for +% a standard. +% It should be checked against the current PDF version (\cs{pdf_version:}). +% A failure means that the version should be changed. +% Currently there is only one hard requirement which leads to a failure in +% a validator like verapdf: The A-4 standard should use PDF 2.0. +% As PDF A-1 is based on PDF 1.4 and PDF A-2 and A-3 are based +% on PDF 1.7 \pkg{l3pdfmeta} also sets these versions also as requirements. +% These requirements are checked by \pkg{l3pdfmeta} when the version is set with +% \cs{DocumentMetadata} and a warning is issued (but the version is +% not changed). More checks are only needed if the version is changed later. +% +% +% \item[|max_pdf_version|] stores the maximal PDF version. % It should be checked against the current PDF version (\cs{pdf_version:}). % A failure means that the version should be changed. -% This check is done by \pkg{l3pdfmeta} when the version is set with -% \cs{DocumentMetadata} so more checks are only needed if the version is changed later. +% The check is currently relevant only for the A-1 to A-3 standards: +% PDF 2.0 leads to a failure in a validator like verapdf so the maximal +% version should be PDF 1.7. +% This requirement is checked by \pkg{l3pdfmeta} when the version is set with +% \cs{DocumentMetadata} and a warning is issued (but the version is +% not changed). More checks are only needed if the version is changed later. % % \item[|named_actions|] this requirement restricts the list of % allowed named actions to |NextPage|, |PrevPage|, |FirstPage|, |LastPage|. @@ -353,7 +381,7 @@ % \begin{macrocode} %<@@=pdfmeta> %<*header> -\ProvidesExplPackage{l3pdfmeta}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdfmeta}{2022-05-11}{0.95o} {PDF-Standards---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} @@ -362,6 +390,11 @@ %<*package> \msg_new:nnn {pdf }{unknown-standard}{The~standard~'#1'~is~unknown~and~has~been~ignored} % \end{macrocode} +% Message for not fitting pdf version +% \begin{macrocode} +\msg_new:nnn {pdf }{wrong-pdfversion} + {PDF~version~#1~is~too~#2~for~standard~'#3'.} +% \end{macrocode} % \begin{variable}{\l_@@_tmpa_tl,\l_@@_tmpb_tl,\l_@@_tmpa_str} % \begin{macrocode} \tl_new:N\l_@@_tmpa_tl @@ -456,6 +489,19 @@ } % \end{macrocode} % \end{macro} +% The next is the counter part and checks that the version is not to high +% \begin{macro}{\@@_standard_verify_handler_max_pdf_version:nn} +% \begin{macrocode} +% +\cs_new_protected:Npn \@@_standard_verify_handler_max_pdf_version:nn #1 #2 + { + \pdf_version_compare:NnTF > + { #2 } + {\prg_return_false:} + {\prg_return_true:} + } +% \end{macrocode} +% \end{macro} % The next checks if the user value is in the list and returns a failure if not. % \begin{macro}{\@@_standard_verify_handler_named_actions:nn} % \begin{macrocode} @@ -515,9 +561,30 @@ { \pdfmeta_standard_verify:nF { annot_flags } { \@@_verify_pdfa_annot_flags: } + \pdfmeta_standard_verify:nnF { min_pdf_version } + { \pdf_version: } + { \msg_warning:nnxxx {pdf}{wrong-pdfversion} + {\pdf_version:}{low} + { + \pdfmeta_standard_item:n{type} + - + \pdfmeta_standard_item:n{level} + } + } + \pdfmeta_standard_verify:nnF { max_pdf_version } + { \pdf_version: } + { \msg_warning:nnxxx {pdf}{wrong-pdfversion} + {\pdf_version:}{high} + { + \pdfmeta_standard_item:n{type} + - + \pdfmeta_standard_item:n{level} + } + } } % \end{macrocode} % +% % \subsubsection{pdf/A} % We use global properties so that follow up standards can be % copied and then adjusted. @@ -531,6 +598,7 @@ % \g_@@_standard_pdf/A-3A_prop , % \g_@@_standard_pdf/A-3B_prop , % \g_@@_standard_pdf/A-3U_prop , +% \g_@@_standard_pdf/A-4_prop , % } % \begin{macrocode} \prop_new:c { g_@@_standard_pdf/A-1B_prop } @@ -542,6 +610,7 @@ ,conformance = B ,year = 2005 ,min_pdf_version = 1.4 %minimum + ,max_pdf_version = 1.4 %minimum ,no_encryption = ,no_external_content = % no F, FFilter, or FDecodeParms in stream dicts ,no_embed_content = % no EF key in filespec, no /Type/EmbeddedFiles @@ -605,7 +674,8 @@ \prop_gremove:cn { g_@@_standard_pdf/A-2B_prop } { embed_content} - +\prop_gput:cnn + { g_@@_standard_pdf/A-2B_prop }{max_pdf_version}{1.7} %A-2u ============== \prop_new:c { g_@@_standard_pdf/A-2U_prop } \prop_gset_eq:cc @@ -669,6 +739,26 @@ { g_@@_standard_pdf/A-3A_prop }{conformance}{A} \prop_gput:cnn { g_@@_standard_pdf/A-3A_prop }{tagged}{} + +%A-4 ============== +\prop_new:c { g_@@_standard_pdf/A-4_prop } +\prop_gset_eq:cc + { g_@@_standard_pdf/A-4_prop } + { g_@@_standard_pdf/A-3U_prop } +\prop_gput:cnn + { g_@@_standard_pdf/A-4_prop }{name}{pdf/A-4} +\prop_gput:cnn + { g_@@_standard_pdf/A-4_prop }{level}{4} +\prop_gput:cnn + { g_@@_standard_pdf/A-4_prop }{min_pdf_version}{2.0} +\prop_gput:cnn + { g_@@_standard_pdf/A-4_prop }{year}{2020} +\prop_gput:cnn + { g_@@_standard_pdf/A-4_prop }{Trailer_no_Info}{} +\prop_gremove:cn + { g_@@_standard_pdf/A-4_prop }{conformance} +\prop_gremove:cn + { g_@@_standard_pdf/A-4_prop }{max_pdf_version} % \end{macrocode} % \end{variable} % diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx index f56714fbd93..23162ff2f66 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdftools.dtx @@ -50,7 +50,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -212,7 +212,7 @@ % % \begin{macrocode} %<*header> -\ProvidesExplPackage{l3pdftools}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdftools}{2022-05-11}{0.95o} {candidate commands for l3pdf---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx index 32b45966fc2..2e4419950dc 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/l3pdfxform.dtx @@ -49,7 +49,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -133,7 +133,7 @@ % \begin{macrocode} %<@@=pdf> %<*header> -\ProvidesExplPackage{l3pdfxform}{2022-04-14}{0.95n} +\ProvidesExplPackage{l3pdfxform}{2022-05-11}{0.95o} {command to create xforms (beta)---LaTeX PDF management testphase bundle} %</header> % \end{macrocode} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx index d7b4224aa51..0fc6be40318 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/ltdocinit.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -117,7 +117,8 @@ % e.g., \texttt{lang=de-DE}. If not given the default value used is |en-US|. % % \item[\texttt{pdfstandard}] Choice key to set the pdf standard. -% Currently |A-1b|, |A-2a|, |A-2b|, |A-2u|, |A-3a|, |A-3b| and |A-3u| are accepted as +% Currently |A-1b|, |A-2a|, |A-2b|, |A-2u|, |A-3a|, |A-3b|, |A-3u| and |A-4| +% are accepted as % values. The casing is irrelevant, |a-1b| works too. % The underlying code to ensure the requirements (as far as they % can be ensured) is still incomplete, but a color profile is included and the @@ -216,7 +217,7 @@ % \begin{macrocode} %<@@=pdfmanagement> %<*header> -\ProvidesExplPackage{ltdocinit}{2022-04-14}{0.95n} +\ProvidesExplPackage{ltdocinit}{2022-05-11}{0.95o} {Initialize document metadata} %</header> % \end{macrocode} @@ -278,7 +279,7 @@ \keys_set:nn {document / metadata} {_pdfstandard=\str_uppercase:n{#1}} } ,_pdfstandard .choices:nn = - {A-1B,A-2A,A-2B,A-2U,A-3A,A-3B,A-3U} + {A-1B,A-2A,A-2B,A-2U,A-3A,A-3B,A-3U,A-4} { \prop_if_exist:cT { g__pdfmeta_standard_pdf/#1_prop } { diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx index 15fc8cf38b6..009f1bf07f2 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-firstaid.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -64,11 +64,11 @@ % |debug={firstaidoff={name1,name2,...},...}|. % \begin{macrocode} %<*package> -\ProvidesExplPackage{pdfmanagement-firstaid}{2022-04-14}{0.95n} +\ProvidesExplPackage{pdfmanagement-firstaid}{2022-05-11}{0.95o} {LaTeX PDF management testphase bundle / firstaid-patches} %<@@=pdfmanagement> -\clist_map_inline:nn {pgf,transparent,hyperxmp,pdflscape,xcolor,color,beamer,output} +\clist_map_inline:nn {pgf,transparent,hyperxmp,pdflscape,xcolor,color,beamer,output,colorspace} { \bool_new:c { g_@@_firstaid_#1_bool } \bool_gset_true:c { g_@@_firstaid_#1_bool } @@ -291,48 +291,14 @@ % as colorspace uses temporary macros whose contents is lost. % \begin{macrocode} %<*package> -%<@@=pdf> -% this must be earlier, to avoid problems with luatex which has two pageresources -% lua/tex -\hook_gput_code:nnn {begindocument} {pdf} - { - \tl_if_exist:NT \spc@op - { - \def\spc@Pageresources#1{} - } - - } - -\hook_gput_code:nnn {begindocument/end} {pdf} - { - \tl_if_exist:NT \spc@op +\bool_if:NT \g_@@_firstaid_colorspace_bool + { + \AddToHook { - \@@_backend_object_new:nn {__spc_extgstate_op_false}{dict} - \@@_backend_object_write:nn - {__spc_extgstate_op_false} - {/Type /ExtGState~/op~false~/OP~false} - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCko} - {\@@_backend_object_ref:n {__spc_extgstate_op_false}} - \@@_backend_object_new:nn {__spc_extgstate_op_true0}{dict} - \@@_backend_object_write:nn - {__spc_extgstate_op_true0} - {/Type /ExtGState~/op~true~/OP~true~/OPM~0}% - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCmz} - {\@@_backend_object_ref:n {__spc_extgstate_op_true0}} - \@@_backend_object_new:nn {__spc_extgstate_op_true1}{dict} - \@@_backend_object_write:nn - {__spc_extgstate_op_true1} - {/Type /ExtGState~/op~true~/OP~true~/OPM~1}% - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCop} - {\@@_backend_object_ref:n {__spc_extgstate_op_true1}} + package/colorspace/after } - } + {\RequirePackage{colorspace-patches-tmp-ltx}} + } %</package> % \end{macrocode}% % \end{documentation} diff --git a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx index 4b764771fdd..174a9be11c2 100644 --- a/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx +++ b/Master/texmf-dist/source/latex/pdfmanagement-testphase/pdfmanagement-testphase.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.95n, released 2022-04-14} +% \date{Version 0.95o, released 2022-05-11} % % \maketitle % \begin{documentation} @@ -386,7 +386,7 @@ % \begin{macrocode} %<@@=pdf> %<*package> -\ProvidesExplPackage{pdfmanagement-testphase}{2022-04-14}{0.95n} +\ProvidesExplPackage{pdfmanagement-testphase}{2022-05-11}{0.95o} {LaTeX PDF management testphase bundle} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} \IfFormatAtLeastTF{2020-10-01}{}{ @@ -414,19 +414,21 @@ % to allow to set it in the document. % \begin{macrocode} %<*header> -\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-04-14}{0.95n} +\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-05-11}{0.95o} {PDF~management~code~(testphase)} %</header> %<*package> %\RequirePackage{l3pdfdict} % needed by l3pdfmanagement %\RequirePackage{l3pdfmanagement} % loads the core code with the boolean %\RequirePackage{ltdocinit} % DocumentMetadata, -%% can perhaps be combined or made optional ... +%can perhaps be combined or made optional ... %\RequirePackage{l3pdfannot} %\RequirePackage{l3pdfxform-beta} %\RequirePackage{l3pdfmeta} % %\RequirePackage{l3pdftools} %\RequirePackage{l3pdffile} +\IfFileExists{tagpdf-base.sty} + {\RequirePackage{tagpdf-base}}{} \input{pdfmanagement-testphase.ltx} %</package> % \end{macrocode} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty index f4f601f59fd..6c06a0022d1 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/color-ltx.sty @@ -24,7 +24,7 @@ %% This file has the LPPL maintenance status "maintained". %% \NeedsTeXFormat{LaTeX2e}[1995/12/01] -\ProvidesPackage{color-ltx}[2022-04-14 v0.95n +\ProvidesPackage{color-ltx}[2022-05-11 v0.95o Standard LaTeX Color (patched for l3color, part of pdfmanagement-testphase, original version 2022/01/06 v1.3d) (DPC)] \edef\Gin@codes{% \catcode`\noexpand\^^A\the\catcode`\^^A\relax diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty new file mode 100644 index 00000000000..7bef6181630 --- /dev/null +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/colorspace-patches-tmp-ltx.sty @@ -0,0 +1,85 @@ +%% This is file `hyperxmp-patches-tmp-ltx.sty" +% Copyright (C) 2019-2021 The LaTeX Project +% +% It may be distributed and/or modified under the conditions of the +% LaTeX Project Public License (LPPL), either version 1.3c of this +% license or (at your option) any later version. The latest version +% of this license is in the file +% +% https://www.latex-project.org/lppl.txt +% +% This file is part of the "pdfmanagement bundle" (The Work in LPPL) +% and all files in that bundle must be distributed together. +% +% ----------------------------------------------------------------------- +% +% The development version of the bundle can be found at +% +% https://github.com/latex3/pdfresources +% +% for those people who are interested. +\NeedsTeXFormat{LaTeX2e}[2020/10/01] +\ProvidesExplPackage{colorspace-patches-tmp-ltx}{2022-05-11}{0.95o} + {temporay patches to for the colorspace package to test pdfresource management ... UF} + +\hook_gput_code:nnn {begindocument} {pdf} + { + \tl_if_exist:NT \spc@op + { + \def\spc@Pageresources#1{} + } + + } + +\hook_gput_code:nnn {begindocument/end} {pdf} + { + \tl_if_exist:NT \spc@op + { + \__pdf_backend_object_new:nn {__spc_extgstate_op_false}{dict} + \__pdf_backend_object_write:nn + {__spc_extgstate_op_false} + {/Type /ExtGState~/op~false~/OP~false} + \pdfmanagement_add:nnn + {Page/Resources/ExtGState} + {SPCko} + {\__pdf_backend_object_ref:n {__spc_extgstate_op_false}} + \__pdf_backend_object_new:nn {__spc_extgstate_op_true0}{dict} + \__pdf_backend_object_write:nn + {__spc_extgstate_op_true0} + {/Type /ExtGState~/op~true~/OP~true~/OPM~0}% + \pdfmanagement_add:nnn + {Page/Resources/ExtGState} + {SPCmz} + {\__pdf_backend_object_ref:n {__spc_extgstate_op_true0}} + \__pdf_backend_object_new:nn {__spc_extgstate_op_true1}{dict} + \__pdf_backend_object_write:nn + {__spc_extgstate_op_true1} + {/Type /ExtGState~/op~true~/OP~true~/OPM~1}% + \pdfmanagement_add:nnn + {Page/Resources/ExtGState} + {SPCop} + {\__pdf_backend_object_ref:n {__spc_extgstate_op_true1}} + } + } + +\RemoveFromHook{begindocument}[colorspace] + +\hook_gput_code:nnn {enddocument} {pdf} + { + \def\spc@elt#1#2 + { + \str_set_eq:Nc\l_tmpa_str {spc@ir@#2} + \seq_set_split:NnV \l_tmpa_seq {~}\l_tmpa_str + \seq_get_left:NN\l_tmpa_seq\l_tmpa_str + %remove spaces + \exp_args:NNx + \str_replace_all:Nnn\l_tmpa_str {\c_hash_str20}{~} + %remove slash + \str_set:Nx\l_tmpa_str{\str_tail:N\l_tmpa_str} + \pdfmanagement_add:nex + {Page/Resources/ColorSpace}{\l_tmpa_str}{\seq_item:Nn\l_tmpa_seq{2}~0~R} + } + \spc@csall + } + +\endinput diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def index b09aa6c98ce..7a8697aa267 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hgeneric-testphase.def @@ -20,7 +20,7 @@ %% %% File: hyperref-generic.dtx -\ProvidesFile{hgeneric-testphase.def}[2022-04-14 v0.95n % +\ProvidesFile{hgeneric-testphase.def}[2022-05-11 v0.95o % generic Hyperref driver for the LaTeX PDF management testphase bundle] \RequirePackage{etoolbox} %why? diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hyperxmp-patches-tmp-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hyperxmp-patches-tmp-ltx.sty index 0f0c22f831f..70b83b44f88 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hyperxmp-patches-tmp-ltx.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/hyperxmp-patches-tmp-ltx.sty @@ -19,7 +19,7 @@ % % for those people who are interested. \NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesExplPackage{hyperxmp-patches-tmp-ltx}{2022-04-14}{0.95n} +\ProvidesExplPackage{hyperxmp-patches-tmp-ltx}{2022-05-11}{0.95o} {Store hyperref metadata in XMP format / temporay patches to test pdfresource management ... UF} \cs_if_exist:NT \pdfmanagement_add:nnn @@ -45,19 +45,27 @@ } % A standard should be retrieved from the document settings. -\cs_new:Npn \__hypxmp_get_Astandard:w #1-#2#3#4\q_stop +\cs_new:Npn \__hypxmp_get_Astandard: { - \tl_if_eq:nnT{#1}{A} + \exp_args:Ne \tl_if_eq:nnT{\pdfmeta_standard_item:n{type}}{A} { \Hy@pdfatrue - \tl_set:Nn \@pdfapart{#2} - \tl_set:Nx \@pdfaconformance{#3} + \tl_set:Nx \@pdfapart{\pdfmeta_standard_item:n{level}} + \tl_set:Nx \@pdfaconformance{\pdfmeta_standard_item:n{conformance}} } } +% A-4 will need also the year, so we have to extend the schema +\renewcommand*{\hyxmp@pdfa@id@schema}{% + \ifHy@pdfa + \exp_args:Nnx\hyxmp@add@simple{pdfaid:part}{\pdfmeta_standard_item:n{level}} + \exp_args:Nnx\hyxmp@add@simple{pdfaid:conformance}{\pdfmeta_standard_item:n{conformance}} + \exp_args:Nnx\hyxmp@add@simple{pdfaid:rev}{\pdfmeta_standard_item:n{year}} + \fi +} + \cs_new_protected:Npn \__hyxmp_get_metadata: { - \exp_last_unbraced:Ne \__hypxmp_get_Astandard:w - {\GetDocumentProperties{document/pdfstandard}}Z-ZZZ\q_stop + \__hypxmp_get_Astandard: \clist_map_inline:nn { % hyperxmp keys: @@ -146,9 +154,26 @@ \DeclareHookRule{begindocument/before}{pdfmanagement/firstaid/hyperxmp}{before}{hyperxmp} -\AddToHook{enddocument}[pdfmanagement-firstaid]{\__hyxmp_get_metadata:} - -\DeclareHookRule{enddocument}{pdfmanagement-firstaid}{before}{hyperxmp} +% hyperxmp puts the code into enddocument, but for xetex this is too late. +% so we move that to shipout/lastpage and add our command before. +% the luatex code must stay in enddocument as hyperxmp tries to detect the pdf size +% there. +\sys_if_output_dvi:TF + { + \RemoveFromHook{enddocument}[hyperxmp] + \AddToHook{shipout/lastpage}[pdfmanagement-firstaid] + { + \__hyxmp_get_metadata: + \hyxmp@auto@assign@data + \hyxmp@check@standards + \hyxmp@warn@if@no@metadata + \hyxmp@embed@packet + } + } + { + \AddToHook{enddocument}[pdfmanagement-firstaid]{\__hyxmp_get_metadata:} + \DeclareHookRule{enddocument}{pdfmanagement-firstaid}{before}{hyperxmp} + } \endinput diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def index 91cc92cae49..591cc1ec00a 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvipdfmx.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-dvipdfmx.def}{2022-04-14}{} + {l3backend-testphase-dvipdfmx.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvipdfmx} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def index 5294692323b..871881ff326 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-dvips.def}{2022-04-14}{} + {l3backend-testphase-dvips.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvips} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def index 5c65533807c..ad99af70156 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvisvgm.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-dvisvgm.def}{2022-04-14}{} + {l3backend-testphase-dvisvgm.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: dvisvgm} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def index 41371a4d723..ba3925205a4 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-luatex.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-luatex.def}{2022-04-14}{} + {l3backend-testphase-luatex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (LuaTeX)} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def index 0843cbad60c..d6fcd9a5aa5 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-pdftex.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-pdftex.def}{2022-04-14}{} + {l3backend-testphase-pdftex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: PDF output (pdfTeX)} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def index 7f00f69c4cc..586f3768029 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-xetex.def @@ -20,7 +20,7 @@ %% %% File: l3backend-testphase.dtx \ProvidesExplFile - {l3backend-testphase-xetex.def}{2022-04-14}{} + {l3backend-testphase-xetex.def}{2022-05-11}{} {LaTeX~PDF~management~testphase~bundle~backend~support: XeTeX} \RequirePackage{l3ref-tmp} \cs_generate_variant:Nn \ref_label:nn {en} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty index 8f7170a1d30..506f2fdee8f 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3pdffield-testphase.sty @@ -27,7 +27,7 @@ %% File: l3pdffield.dtx \NeedsTeXFormat{LaTeX2e} -\ProvidesExplPackage{l3pdffield-testphase}{2022-04-14}{0.95n}% +\ProvidesExplPackage{l3pdffield-testphase}{2022-05-11}{0.95o}% {form fields} \csname HyField@NeedAppearancesfalse\endcsname % suppress NeedAppearances \str_new:N \l__pdffield_tmpa_str diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdflscape-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdflscape-ltx.sty index 6cabadb5a00..337cc6c4ccb 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdflscape-ltx.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdflscape-ltx.sty @@ -22,7 +22,7 @@ %% This work consists of the main source file pdflscape-ltx.sty %% \NeedsTeXFormat{LaTeX2e} -\ProvidesExplPackage{pdflscape-ltx}{2022-04-14}{0.95n} +\ProvidesExplPackage{pdflscape-ltx}{2022-05-11}{0.95o} {Display of landscape pages in PDF - adaption of pdflscape to the PDFmanagement bundle (testphase)} \DeclareOption*{\PassOptionsToPackage\CurrentOption{graphics}} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty index b653cc134b1..b600cb13267 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-firstaid.sty @@ -19,10 +19,10 @@ %% and all files in that bundle must be distributed together. %% %% File: pdfmanagement-firstaid.dtx -\ProvidesExplPackage{pdfmanagement-firstaid}{2022-04-14}{0.95n} +\ProvidesExplPackage{pdfmanagement-firstaid}{2022-05-11}{0.95o} {LaTeX PDF management testphase bundle / firstaid-patches} -\clist_map_inline:nn {pgf,transparent,hyperxmp,pdflscape,xcolor,color,beamer,output} +\clist_map_inline:nn {pgf,transparent,hyperxmp,pdflscape,xcolor,color,beamer,output,colorspace} { \bool_new:c { g__pdfmanagement_firstaid_#1_bool } \bool_gset_true:c { g__pdfmanagement_firstaid_#1_bool } @@ -152,45 +152,14 @@ } {\RequirePackage{hyperxmp-patches-tmp-ltx}} } -\hook_gput_code:nnn {begindocument} {pdf} - { - \tl_if_exist:NT \spc@op - { - \def\spc@Pageresources#1{} - } - - } - -\hook_gput_code:nnn {begindocument/end} {pdf} - { - \tl_if_exist:NT \spc@op +\bool_if:NT \g__pdfmanagement_firstaid_colorspace_bool + { + \AddToHook { - \__pdf_backend_object_new:nn {__spc_extgstate_op_false}{dict} - \__pdf_backend_object_write:nn - {__spc_extgstate_op_false} - {/Type /ExtGState~/op~false~/OP~false} - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCko} - {\__pdf_backend_object_ref:n {__spc_extgstate_op_false}} - \__pdf_backend_object_new:nn {__spc_extgstate_op_true0}{dict} - \__pdf_backend_object_write:nn - {__spc_extgstate_op_true0} - {/Type /ExtGState~/op~true~/OP~true~/OPM~0}% - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCmz} - {\__pdf_backend_object_ref:n {__spc_extgstate_op_true0}} - \__pdf_backend_object_new:nn {__spc_extgstate_op_true1}{dict} - \__pdf_backend_object_write:nn - {__spc_extgstate_op_true1} - {/Type /ExtGState~/op~true~/OP~true~/OPM~1}% - \pdfmanagement_add:nnn - {Page/Resources/ExtGState} - {SPCop} - {\__pdf_backend_object_ref:n {__spc_extgstate_op_true1}} + package/colorspace/after } - } + {\RequirePackage{colorspace-patches-tmp-ltx}} + } %% %% %% End of file `pdfmanagement-firstaid.sty'. diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx index a74b2d1702d..54bb1497583 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.ltx @@ -27,7 +27,7 @@ %% and all files in that bundle must be distributed together. %% %% File: pdfmanagement-testphase.dtx -\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-04-14}{0.95n} +\ProvidesExplFile{pdfmanagement-testphase.ltx}{2022-05-11}{0.95o} {PDF~management~code~(testphase)} %% File: l3pdfdict.dtx \cs_new:Npn \__pdfdict_get_type:n #1 @@ -1042,7 +1042,7 @@ \keys_set:nn {document / metadata} {_pdfstandard=\str_uppercase:n{#1}} } ,_pdfstandard .choices:nn = - {A-1B,A-2A,A-2B,A-2U,A-3A,A-3B,A-3U} + {A-1B,A-2A,A-2B,A-2U,A-3A,A-3B,A-3U,A-4} { \prop_if_exist:cT { g__pdfmeta_standard_pdf/#1_prop } { @@ -1459,6 +1459,8 @@ %% File: l3pdfmeta.dtx \msg_new:nnn {pdf }{unknown-standard}{The~standard~'#1'~is~unknown~and~has~been~ignored} +\msg_new:nnn {pdf }{wrong-pdfversion} + {PDF~version~#1~is~too~#2~for~standard~'#3'.} \tl_new:N\l__pdfmeta_tmpa_tl \tl_new:N\l__pdfmeta_tmpb_tl \str_new:N \l__pdfmeta_tmpa_str @@ -1508,6 +1510,13 @@ {\prg_return_false:} {\prg_return_true:} } +\cs_new_protected:Npn \__pdfmeta_standard_verify_handler_max_pdf_version:nn #1 #2 + { + \pdf_version_compare:NnTF > + { #2 } + {\prg_return_false:} + {\prg_return_true:} + } \cs_new_protected:Npn \__pdfmeta_standard_verify_handler_named_actions:nn #1 #2 { @@ -1543,6 +1552,26 @@ { \pdfmeta_standard_verify:nF { annot_flags } { \__pdfmeta_verify_pdfa_annot_flags: } + \pdfmeta_standard_verify:nnF { min_pdf_version } + { \pdf_version: } + { \msg_warning:nnxxx {pdf}{wrong-pdfversion} + {\pdf_version:}{low} + { + \pdfmeta_standard_item:n{type} + - + \pdfmeta_standard_item:n{level} + } + } + \pdfmeta_standard_verify:nnF { max_pdf_version } + { \pdf_version: } + { \msg_warning:nnxxx {pdf}{wrong-pdfversion} + {\pdf_version:}{high} + { + \pdfmeta_standard_item:n{type} + - + \pdfmeta_standard_item:n{level} + } + } } \prop_new:c { g__pdfmeta_standard_pdf/A-1B_prop } \prop_gset_from_keyval:cn { g__pdfmeta_standard_pdf/A-1B_prop } @@ -1553,6 +1582,7 @@ ,conformance = B ,year = 2005 ,min_pdf_version = 1.4 %minimum + ,max_pdf_version = 1.4 %minimum ,no_encryption = ,no_external_content = % no F, FFilter, or FDecodeParms in stream dicts ,no_embed_content = % no EF key in filespec, no /Type/EmbeddedFiles @@ -1614,7 +1644,8 @@ \prop_gremove:cn { g__pdfmeta_standard_pdf/A-2B_prop } { embed_content} - +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-2B_prop }{max_pdf_version}{1.7} \prop_new:c { g__pdfmeta_standard_pdf/A-2U_prop } \prop_gset_eq:cc { g__pdfmeta_standard_pdf/A-2U_prop } @@ -1671,6 +1702,25 @@ { g__pdfmeta_standard_pdf/A-3A_prop }{conformance}{A} \prop_gput:cnn { g__pdfmeta_standard_pdf/A-3A_prop }{tagged}{} + +\prop_new:c { g__pdfmeta_standard_pdf/A-4_prop } +\prop_gset_eq:cc + { g__pdfmeta_standard_pdf/A-4_prop } + { g__pdfmeta_standard_pdf/A-3U_prop } +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-4_prop }{name}{pdf/A-4} +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-4_prop }{level}{4} +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-4_prop }{min_pdf_version}{2.0} +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-4_prop }{year}{2020} +\prop_gput:cnn + { g__pdfmeta_standard_pdf/A-4_prop }{Trailer_no_Info}{} +\prop_gremove:cn + { g__pdfmeta_standard_pdf/A-4_prop }{conformance} +\prop_gremove:cn + { g__pdfmeta_standard_pdf/A-4_prop }{max_pdf_version} \prop_new:N \g__pdfmeta_outputintents_prop \keys_define:nn { document / metadata } { diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty index 30ad83fa329..cfbd64cab8a 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/pdfmanagement-testphase.sty @@ -19,7 +19,7 @@ %% and all files in that bundle must be distributed together. %% %% File: pdfmanagement-testphase.dtx -\ProvidesExplPackage{pdfmanagement-testphase}{2022-04-14}{0.95n} +\ProvidesExplPackage{pdfmanagement-testphase}{2022-05-11}{0.95o} {LaTeX PDF management testphase bundle} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} \IfFormatAtLeastTF{2020-10-01}{}{ @@ -39,7 +39,8 @@ } \ProcessOptions\relax -%% can perhaps be combined or made optional ... +\IfFileExists{tagpdf-base.sty} + {\RequirePackage{tagpdf-base}}{} \input{pdfmanagement-testphase.ltx} %% %% diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/transparent-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/transparent-ltx.sty index d92ef551d13..9c8e0ee942c 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/transparent-ltx.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/transparent-ltx.sty @@ -3,7 +3,7 @@ %% a replacement for transparent sty from Heiko Oberdiek %% \NeedsTeXFormat{LaTeX2e}[2020/10/01] -\ProvidesExplPackage{transparent-ltx}{2022-04-14}{0.95n} +\ProvidesExplPackage{transparent-ltx}{2022-05-11}{0.95o} {Transparency with color stacks (replacement for transparent.sty from Heiko Oberdiek)}% \RequirePackage{l3opacity} diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty index 3c298e5b992..17ecbfee312 100644 --- a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/xcolor-patches-tmp-ltx.sty @@ -1,6 +1,6 @@ %% LaTeX2e file `xcolor-patches.sty' %% -\ProvidesPackage{xcolor-patches-tmp-ltx}[2022-04-14 v0.95n patch xcolor for l3color] +\ProvidesPackage{xcolor-patches-tmp-ltx}[2022-05-11 v0.95o patch xcolor for l3color] \@ifundefined{color_set:nn}{\RequirePackage{l3color}}{} \ExplSyntaxOn |