summaryrefslogtreecommitdiff
path: root/macros/latex
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2024-09-13 03:03:03 +0000
committerNorbert Preining <norbert@preining.info>2024-09-13 03:03:03 +0000
commit911eff6db6e99d8b8abab40279f0c928b5a4d8e4 (patch)
tree323bc5804f29132150cc46e1dd3f96869ae3184f /macros/latex
parent2520a2b965d4ba74679d864e1ec6ff00a6574f55 (diff)
CTAN sync 202409130303
Diffstat (limited to 'macros/latex')
-rw-r--r--macros/latex/contrib/easybook/README.md2
-rw-r--r--macros/latex/contrib/easybook/easybook.dtx18
-rw-r--r--macros/latex/contrib/easybook/easybook.pdfbin638421 -> 638424 bytes
-rw-r--r--macros/latex/contrib/easybook/easybook.tex4
-rw-r--r--macros/latex/contrib/sidenotes/caesar_book.cls44
-rw-r--r--macros/latex/contrib/sidenotes/caesar_example.pdfbin86126 -> 91942 bytes
-rw-r--r--macros/latex/contrib/sidenotes/caesar_example.tex21
-rw-r--r--macros/latex/contrib/sidenotes/sidenotes.dtx246
-rw-r--r--macros/latex/contrib/sidenotes/sidenotes.ins4
-rw-r--r--macros/latex/contrib/sidenotes/sidenotes.pdfbin217903 -> 233107 bytes
-rw-r--r--macros/latex/contrib/tagpdf/README.md4
-rw-r--r--macros/latex/contrib/tagpdf/ex-AF-file.pdf98
-rw-r--r--macros/latex/contrib/tagpdf/ex-alt-actualtext.pdfbin34295 -> 34624 bytes
-rw-r--r--macros/latex/contrib/tagpdf/ex-attribute.pdf86
-rw-r--r--macros/latex/contrib/tagpdf/ex-formula-problem.pdf74
-rw-r--r--macros/latex/contrib/tagpdf/ex-list.pdf158
-rw-r--r--macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf52
-rw-r--r--macros/latex/contrib/tagpdf/ex-softhyphen.pdf74
-rw-r--r--macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf66
-rw-r--r--macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf100
-rw-r--r--macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf94
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-backend.dtx10
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-checks.dtx23
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-code.pdfbin1737121 -> 1782575 bytes
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-data.dtx16
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx10
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx6
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx6
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-roles.dtx4
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-space.dtx5
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-struct.dtx236
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-tree.dtx10
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf-user.dtx4
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf.dtx105
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf.pdfbin1124473 -> 1131799 bytes
-rw-r--r--macros/latex/contrib/tagpdf/tagpdf.tex47
-rw-r--r--macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty2
37 files changed, 919 insertions, 710 deletions
diff --git a/macros/latex/contrib/easybook/README.md b/macros/latex/contrib/easybook/README.md
index 8c065d789b..4e7815ea41 100644
--- a/macros/latex/contrib/easybook/README.md
+++ b/macros/latex/contrib/easybook/README.md
@@ -1,5 +1,5 @@
# The `easybook` document class
-Easily typesetting Chinese theses or books (v2024dn)
+Easily typesetting Chinese theses or books (v2024do)
## Abstract
`easybook` is a pure academic template created based on the `ctexbook` book document class. It also has the functions of `book` and `article` document class. Combined with the general framework design of the theses of many universities in China, providing multiple commands and interfaces allows users to easily customize the theses templates. Its basic macro package `easybase` can also be used with `ctex` and standard document classes.
diff --git a/macros/latex/contrib/easybook/easybook.dtx b/macros/latex/contrib/easybook/easybook.dtx
index cb8cdc02cc..2846314dc0 100644
--- a/macros/latex/contrib/easybook/easybook.dtx
+++ b/macros/latex/contrib/easybook/easybook.dtx
@@ -14,7 +14,7 @@
% This work has the LPPL maintenance status `maintained'.
%<class|package>\NeedsTeXFormat{LaTeX2e}[2021/11/15]
%<*class>
-\ProvidesExplClass{easybook}{2024/09/11}{2024dn}
+\ProvidesExplClass{easybook}{2024/09/12}{2024do}
{Easily typesetting Chinese theses or books}
\bool_new:N \l__eb_compile_draft_bool
@@ -301,7 +301,7 @@
%</class>
%<*package>
\RequirePackage{etoolbox}
-\ProvidesExplPackage{easybase}{2024/09/11}{2024dn}
+\ProvidesExplPackage{easybase}{2024/09/12}{2024do}
{Easily typesetting Chinese theses or books}
\cs_generate_variant:Nn \dim_set:Nn { NV }
@@ -2794,16 +2794,18 @@
{
\renewcommand{\theupfootnote}{\@fnsymbol\c@footnote}
\renewcommand{\thefootnote}{\@fnsymbol\c@footnote}
+ \let\footnote\thanks
}
{}
- \LARGE\@title\par
+ \bgroup\LARGE\@title\par\egroup
\notbool{@titlepage}{\vskip 1.5em}{\vskip 3em}
- \large
+ \bgroup\large
\begin{tabular}[t]{c}
\@author
- \end{tabular}\par\vskip 1.5em
- \@date
- \notbool{@titlepage}{\par\vskip 1.5em}{}
+ \end{tabular}\par\egroup
+ \vskip 1.5em
+ \bgroup\large\@date\par\egroup
+ \notbool{@titlepage}{\vskip 1.5em}{}
\@thanks
},
beforecode =
@@ -2844,7 +2846,7 @@
}
%</package>
%<*tcolorbox>
-\ProvidesExplFile{eb-tcolorbox.cfg}{2024/09/11}{2024dn}
+\ProvidesExplFile{eb-tcolorbox.cfg}{2024/09/12}{2024do}
{Customization of tcolorbox for easybook}
\cs_set_protected:Npn \addtotcbstyle #1#2
diff --git a/macros/latex/contrib/easybook/easybook.pdf b/macros/latex/contrib/easybook/easybook.pdf
index ff9a8004fc..5a711b6c32 100644
--- a/macros/latex/contrib/easybook/easybook.pdf
+++ b/macros/latex/contrib/easybook/easybook.pdf
Binary files differ
diff --git a/macros/latex/contrib/easybook/easybook.tex b/macros/latex/contrib/easybook/easybook.tex
index 799a013608..6f02699326 100644
--- a/macros/latex/contrib/easybook/easybook.tex
+++ b/macros/latex/contrib/easybook/easybook.tex
@@ -23,8 +23,8 @@
name = easybook,
color-scheme = blue,
title = EASYBOOK使用手册,
- version = v2024dn,
- date = 2024/09/11,
+ version = v2024do,
+ date = 2024/09/12,
authors = 瞿毅,
info = 简便地排版中文学位论文或书籍,
email = toquyi@163.com,
diff --git a/macros/latex/contrib/sidenotes/caesar_book.cls b/macros/latex/contrib/sidenotes/caesar_book.cls
index 685f736aef..c1f24a16ad 100644
--- a/macros/latex/contrib/sidenotes/caesar_book.cls
+++ b/macros/latex/contrib/sidenotes/caesar_book.cls
@@ -1,20 +1,13 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesFile{caesar_book.cls}[2020/03/24 v1.00a Caesar book]
-% Load the amsmath and the mhchem package before loading microtype
-\RequirePackage{amsmath}% better math handling
-\RequirePackage[version=3]{mhchem}% chemical formulas
+\ProvidesFile{caesar_book.cls}[2024/09/12 v1.20 Caesar book]
\LoadClassWithOptions{book}% this is derived from the book class
\RequirePackage{sidenotes}% put annotations, tables and figures in the margin
-\captionsetup{font=footnotesize, skip=4pt}
-\RequirePackage[maxfloats=45]{morefloats}% a lot of marginals need more float 'memory'
+\captionsetup{font=footnotesize, skip=4pt} % use values matching the style
+\extrafloats{45}% a lot of marginals need more float 'memory'
\RequirePackage{marginfix}% automatically adjust the side-floats nicely
-\newcommand{\caesar@letterspace}[1]{#1}% allow LuaLaTeX, LaTeX letterspacing
\RequirePackage{microtype}% microtypography
-\@ifpackagelater{microtype}{2011/08/18}% xxx allow LaTeX and earlier microtype
-{\renewcommand{\caesar@letterspace}[1]{\textls{#1}}}%
-{\AtEndDocument{\ClassWarningNoLine{caesar_book}{Need newest microtype for letterspacing.}}}
%
-% Set page layout geometry -- default is science-book format
+% Set page layout geometry - default is science-book format
% this means a (portrait) paper size of 170mm x 240mm
%
\RequirePackage{geometry}
@@ -24,7 +17,9 @@
%
\renewcommand{\normalsize}{\fontsize{10pt}{13pt}\selectfont}%
\renewcommand{\footnotesize}{\fontsize{8pt}{10pt}\selectfont}%
-% fullwidth environment, text across textwidth+marginparsep+marginparwidth
+%
+% fullwidth environment, text across textwidth + marginparsep + marginparwidth
+%
\newlength{\overhang}
\setlength{\overhang}{\marginparwidth}
\addtolength{\overhang}{\marginparsep}
@@ -38,7 +33,9 @@
{\end{adjustwidth*}}%
{\end{adjustwidth}}%
}
+%
% set up the fonts
+%
\RequirePackage{ifluatex}
\ifluatex% in LuaLateX we use fontspec
\RequirePackage{fontspec}%
@@ -47,14 +44,15 @@
\setmainfont[Ligatures=TeX, Numbers=OldStyle]{Tex Gyre Pagella}% free Palatino clone
\setmonofont{Tex Gyre Cursor}% works okay with palatino
\setsansfont{Tex Gyre Heros}% work okay with palatino
- \mhchemoptions{textfontcommand=\addfontfeature{Numbers=Lining}} % use lining numbers for chemical formulas
\else% in LaTeX we load fonts differently
\IfFileExists{mathpazo.sty}{\RequirePackage[osf,sc]{mathpazo}}{}% palatino clone for math
\IfFileExists{helvet.sty}{\RequirePackage[scaled=0.90]{helvet}}{}% helvetica is sans serif font
\IfFileExists{beramono.sty}{\RequirePackage[scaled=0.85]{beramono}}{}% beramono is tt font
\RequirePackage[T1]{fontenc}% finally load fontenc
\fi
-% nice headings and TOC
+%
+% nice headings, TOC, page numbering ...
+%
\RequirePackage{titlesec,titletoc}% load the helper package
\setcounter{secnumdepth}{-1}% no numbering at all
\titleformat{\chapter}[display]{\relax\itshape\huge}{}{0pt}{\huge\rmfamily\itshape}[]% chapter format
@@ -75,7 +73,7 @@
\renewcommand{\headrulewidth}{0pt}% The running heads and feet do not have rules
\renewcommand{\footrulewidth}{0pt}
\fancyhf{}% set up the page numbering
-{\fancyfoot[LE,RO]{\thepage}}
+\fancyfoot[LE,RO]{\thepage}
\fancypagestyle{plain}{%
\fancyhf{}
}
@@ -87,14 +85,13 @@
\@savemarbox\@marbox{\marginparstyle#1}% marginparstyle is a prefix to the marginpar text now
\global\setbox\@currbox\copy\@marbox % the rest of the definition is taken from original LaTeX
\@xympar}
-\renewcommand*{\marginfont}{\marginparstyle}
+\@ifpackageloaded{marginnote}{\renewcommand*{\marginfont}{\marginparstyle}}{} % adjust marginnote font in the same way
% setup itemize and enumerate
\RequirePackage{enumitem}
\setlist[itemize]{leftmargin=*}
-%\renewcommand{\labelitemi}{}
-% compatibility with T-L
%
% titlepage
+%
\RequirePackage{ifthen}
\newcommand{\publisher}[1]{\gdef\caesar@publisher{#1}}
\gdef\caesar@thesis{}
@@ -106,7 +103,7 @@
% first count the number of lines in the title
\begin{fullwidth}
\raggedright%
- \setbox0\vbox{\noindent\fontsize{30}{38}\selectfont\caesar@letterspace{\MakeTextUppercase{\@title}}\par
+ \setbox0\vbox{\noindent\fontsize{30}{38}\selectfont\textls{\MakeTextUppercase{\@title}}\par
\count@\z@
\loop
\unskip\unpenalty\unskip\unpenalty\unskip
@@ -124,12 +121,12 @@
\sffamily%
%\begin{fullwidth}%
\vspace*{0em}% one line extra space
- \noindent\LARGE\caesar@letterspace{\MakeTextUppercase{\@author}}\par
+ \noindent\LARGE\textls{\MakeTextUppercase{\@author}}\par
\vfill%
- \noindent\fontsize{30}{38}\selectfont\textcolor{darkgray}{\caesar@letterspace{\MakeTextUppercase{\@title}}}\par
+ \noindent\fontsize{30}{38}\selectfont\textcolor{darkgray}{\textls{\MakeTextUppercase{\@title}}}\par
\vfill%
\vspace{\caesar@titlespace}%
- \noindent\Large\caesar@letterspace{\MakeTextUppercase{\caesar@publisher}}\par
+ \noindent\Large\textls{\MakeTextUppercase{\caesar@publisher}}\par
%\end{fullwidth}%
}%
\thispagestyle{empty}%
@@ -146,6 +143,9 @@
\section*{\caesar@thesis\@author}
%
}
+%
+% higher level macros go here
+%
\newcommand\newthought[1]{%
\addvspace{1.0\baselineskip plus 0.5ex minus 0.2ex}%
\noindent\textsc{#1}%
diff --git a/macros/latex/contrib/sidenotes/caesar_example.pdf b/macros/latex/contrib/sidenotes/caesar_example.pdf
index ddf07bf4e2..c49cb0a63d 100644
--- a/macros/latex/contrib/sidenotes/caesar_example.pdf
+++ b/macros/latex/contrib/sidenotes/caesar_example.pdf
Binary files differ
diff --git a/macros/latex/contrib/sidenotes/caesar_example.tex b/macros/latex/contrib/sidenotes/caesar_example.tex
index c0f11de77c..fd6fb8e484 100644
--- a/macros/latex/contrib/sidenotes/caesar_example.tex
+++ b/macros/latex/contrib/sidenotes/caesar_example.tex
@@ -10,24 +10,25 @@
%
\begin{filecontents}{\jobname.bib}
@book{Tufte2006,
- author = {Edward R. Tufte},
- title = {Beautiful Evidence},
- year = {2006},
- publisher = {Graphics Press, {LLC}},
- isbn = {0-9613921-7-7}
+ author = {Edward R. Tufte},
+ title = {Beautiful Evidence},
+ year = {2006},
+ publisher = {Graphics Press, {LLC}},
+ isbn = {0-9613921-7-7}
}
@book{Tufte1990,
- author = {Edward R. Tufte},
- title = {Envisioning Information},
- publisher = {Graphics Press},
- year = {1990},
- isbn = {0-9613921-1-8}
+ author = {Edward R. Tufte},
+ title = {Envisioning Information},
+ publisher = {Graphics Press},
+ year = {1990},
+ isbn = {0-9613921-1-8}
}
\end{filecontents}
% -- language: English --
%
+\usepackage{csquotes}
\usepackage[english]{babel}
% -- biblatex --
\usepackage[backend=biber,style=philosophy-classic]{biblatex} % xxx
diff --git a/macros/latex/contrib/sidenotes/sidenotes.dtx b/macros/latex/contrib/sidenotes/sidenotes.dtx
index 7c67ad4fd1..709a8a5e32 100644
--- a/macros/latex/contrib/sidenotes/sidenotes.dtx
+++ b/macros/latex/contrib/sidenotes/sidenotes.dtx
@@ -2,7 +2,7 @@
%
% sidenotes.dtx
%
-% Copyright (C) 2011-2020 by Andy Thomas <andythomas(at)web.de>
+% Copyright (C) 2011-2024 by Andy Thomas <andythomas(at)web.de>
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -11,17 +11,17 @@
% http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
-%
+%
% The author of this work is Andy Thomas
%
%<*driver>
-\ProvidesFile{sidenotes.dtx}[2016/04/21 v1.00 rich text in the margin for LaTeX]%
+\ProvidesFile{sidenotes.dtx}[2024/09/12 v1.20 Rich text in the margin for LaTeX]%
%</driver>
%<package>\RequirePackage{l3keys2e}%
-%<package>\ProvidesExplPackage{sidenotes}{2016/04/21}{1.00}{rich text in the margin for LaTeX}
-%<package>\RequirePackage{marginnote} % provides an offset option for the marginals instead of a float
-%<package>\RequirePackage{caption} % handles the captions (in the margin)
-%<package>\RequirePackage{xparse} % new LaTeX3 syntax to define macros and environments
+%<package>\ProvidesExplPackage{sidenotes}{2024/09/12}{1.20}{Rich text in the margin for LaTeX}
+%<package>\RequirePackage{marginnote} % Provides an offset option for the marginals instead of a float
+%<package>\RequirePackage{caption} % Handles the captions (in the margin)
+%<package>\RequirePackage{xparse} % New LaTeX3 syntax to define macros and environments
%<package>\RequirePackage[strict]{changepage} % Changepage package for symmetric twoside handling
%<*driver>
\documentclass{ltxdoc}
@@ -54,10 +54,10 @@
%
%
% \GetFileInfo{sidenotes.dtx}
-%
+%
%
% \title{The \textsf{sidenotes} package\thanks{This document
-% corresponds to \textsf{sidenotes}~\fileversion, dated \filedate.
+% corresponds to \textsf{sidenotes}~\fileversion, dated \filedate.
% Earlier versions by Oliver Schebaum.}}
% \author{Andy Thomas\\ \texttt{andythomas(at)web.de}}
%
@@ -74,9 +74,9 @@
% \changes{v1.00}{2016/04/21}{no changes, tag v1.0}
%
% \begin{abstract}
-% \noindent This package allows the typesetting of rich content in the margin.
+% \noindent This package allows the typesetting of rich content in the margin.
% It includes text, but also figures, captions, tables and citations,
-% which is common in science textbooks such as Feynman's
+% which is common in science textbooks such as Feynman's
% \textit{Lectures on Physics}.
% \end{abstract}
%
@@ -91,99 +91,99 @@
% \DescribeMacro{\sidenote}
% The macro is very similar to the footnote macro and tries to emulate
% its behavior. It just puts the notes in the margin instead of the bottom
-% of the page, therefore the name \emph{sidenote}. It has the same parameters
+% of the page, therefore the name \emph{sidenote}. It has the same parameters
% as footnote as well as an additional offset:
-% \verb+\sidenote[number][offset]{text}+. All the sidenotes are subsequently
-% numbered and float in the margin to avoid overlap.
+% \verb+\sidenote[number][offset]{text}+. All the sidenotes are subsequently
+% numbered and float in the margin to avoid overlap.
% The first, optional parameter will manually change the numbering to the given
-% value. The second offset parameter will fix the text at a certain position
-% in the margin. In particular, there is a difference between not providing an
+% value. The second offset parameter will fix the text at a certain position
+% in the margin. In particular, there is a difference between not providing an
% offset (floating text) and an offset of 0 (fix text at actual position).
%
-% \DescribeMacro{\sidenotemark}
-% Sidenote tries to mimic the footnote behavior and, consequently, provides the
-% same solutions. Sometimes, it is not possible to directly call a sidenote
-% macro, e.g.\ inside of a figure caption. Then, you can use
-% \verb+\sidenotemark[number]+ and \verb+\sidenotetext[number][offset]{text}+
-% macros. \verb+\sidenotemark+ puts a mark at the current position. Afterwards,
-% outside of the environment that causes the trouble,
+% \DescribeMacro{\sidenotemark}
+% Sidenote tries to mimic the footnote behavior and, consequently, provides the
+% same solutions. Sometimes, it is not possible to directly call a sidenote
+% macro, e.g.\ inside of a figure caption. Then, you can use
+% \verb+\sidenotemark[number]+ and \verb+\sidenotetext[number][offset]{text}+
+% macros. \verb+\sidenotemark+ puts a mark at the current position. Afterwards,
+% outside of the environment that causes the trouble,
% \DescribeMacro{\sidenotetext}
-% it is possible the call \verb+\sidenotetext[number][offset]{text}+ to provide
-% the text and typeset the sidenote. The optional parameters are similar to the
-% sidenote macro. The first, optional parameter will change the numbering and
+% it is possible the call \verb+\sidenotetext[number][offset]{text}+ to provide
+% the text and typeset the sidenote. The optional parameters are similar to the
+% sidenote macro. The first, optional parameter will change the numbering and
% the offset will change the position.
%
% \changes{v0.61}{2011/10/17}{documentation of sidetext}
%
%\DescribeMacro{\sidecaption}
-% The \verb+\sidecaption[entry][offset]{text}+ macro can be used if the caption
-% of a figure or table should be in the margin. The caption has to be adjacent
-% to the figure, so a float is not an option here. Therefore, the caption might
+% The \verb+\sidecaption[entry][offset]{text}+ macro can be used if the caption
+% of a figure or table should be in the margin. The caption has to be adjacent
+% to the figure, so a float is not an option here. Therefore, the caption might
% overlap with other marginals. Then, these marginals have to be adjusted with
% offset parameters. The formatting of the caption is done by the \emph{caption}
-% package by defining a \emph{sidecaption} style. Please refer to the
+% package by defining a \emph{sidecaption} style. Please refer to the
% documentation of the caption package for information on styles. The macro can
-% be starred, which is analog to the regular starred caption (no numbering, no
+% be starred, which is analog to the regular starred caption (no numbering, no
% tof entry): \verb+\sidecaption*[offset]{text}+.
%
% \DescribeEnv{marginfigure}
-% The marginfigure environment puts a figure and its caption in the margin.
-% Instead of \verb+\begin{figure}[htbp]+ use \verb+\begin{marginfigure}[offset]+.
-% Again, using an offset value switches the behavior from float to fixed
-% position. The marginfigure has its own caption style named \emph{marginfigure}.
+% The marginfigure environment puts a figure and its caption in the margin.
+% Instead of \verb+\begin{figure}[htbp]+ use \verb+\begin{marginfigure}[offset]+.
+% Again, using an offset value switches the behavior from float to fixed
+% position. The marginfigure has its own caption style named \emph{marginfigure}.
%
% \DescribeEnv{margintable}
-% The margintable environment works similar to marginfigure, but with table
-% environments. Use \verb+\begin{margintable}[offset]+ instead of
+% The margintable environment works similar to marginfigure, but with table
+% environments. Use \verb+\begin{margintable}[offset]+ instead of
% \verb+\begin{table}[htbp]+, its caption style is named \emph{margintable}.
%
% \DescribeEnv{figure*}
-% The \verb+figure*+ environment is used to position figures across the full
+% The \verb+figure*+ environment is used to position figures across the full
% page, i.e. the text width plus the margin. The algorithm has to distinguish
% between recto and verso (left and right) pages and might need up to three
% \LaTeX{} runs to provide the desired result. The corresponding caption style
-% is called \emph{widefigure}.
+% is called \emph{widefigure}.
% \DescribeEnv{table*}
-% The sister environment for tables is \verb+table*+. Use \emph{widetable} to
-% change its caption style.
+% The sister environment for tables is \verb+table*+. Use \emph{widetable} to
+% change its caption style.
%
% \section{Technical note}
%
-% When writing the package, we tried to provide a \emph{minimum} extension to
+% When writing the package, we tried to provide a \emph{minimum} extension to
% standard \LaTeX{} for typesetting rich content in the margin. This means,
% that there are no sensible default values for most things such as page
-% geometry, fonts and font sizes. However, the \emph{caesar\textunderscore
-% book}-class accompanies this package as an example implementation as well
-% as a template we use for our theses.
-%
-% In addition, we tried to keep compatibility with
-% packages the user might want to use later. However, the following packages
-% are needed by \emph{sidenotes} and might introduce side effects with other
+% geometry, fonts and font sizes. However, the \emph{caesar\textunderscore
+% book}-class accompanies this package as an example implementation as well
+% as a template we use for our theses.
+%
+% In addition, we tried to keep compatibility with
+% packages the user might want to use later. However, the following packages
+% are needed by \emph{sidenotes} and might introduce side effects with other
% packages.
%
% \section{Required packages}
-%
+%
% \changes{v0.52}{2011/10/06}{added a section that the package needs marginnote, caption and xifthen.}
% \changes{v0.90}{2012/06/02}{added a section that the package needs twoopt and changepage.}
-% \changes{v0.94}{2014/01/22}{start using xparse}
-% \changes{v0.97}{2014/06/05}{start using l3keys2e}
+% \changes{v0.94}{2014/01/22}{start using xparse}
+% \changes{v0.97}{2014/06/05}{start using l3keys2e}
%
% \begin{description}
% \item[marginnote]
-% supports an alternative to \verb+\marginpar+ and creates notes in the
-% margin. The notes are not floats and can be shifted up or down.
-% Technically, every time an offset is provided the package uses
+% supports an alternative to \verb+\marginpar+ and creates notes in the
+% margin. The notes are not floats and can be shifted up or down.
+% Technically, every time an offset is provided the package uses
% \verb+\marginnote+ and \verb+\marginpar+ otherwise.
% \item[caption]
-% allows to set figure and table captions in the margin and allows
-% easier formatting of these captions. Please refer to the
-% \emph{caption} manual for details on styles.
+% allows to set figure and table captions in the margin and allows
+% easier formatting of these captions. Please refer to the
+% \emph{caption} manual for details on styles.
% \item[xparse] is used to take advantage of the improved \LaTeX3 syntax.
% All macros and environments are defined using this package.
-% \item[l3keys2e] provides a key/value mechanism
-% \item[changepage] is used to correctly shift figure* and table*. It has
-% to use the option [strict] to work properly. This might lead to an
-% option clash, if the same package is loaded without this option.
+% \item[l3keys2e] provides a key/value mechanism
+% \item[changepage] is used to correctly shift figure* and table*. It has
+% to use the option [strict] to work properly. This might lead to an
+% option clash, if the same package is loaded without this option.
% \end{description}%
%
% \section{Implementation}
@@ -192,39 +192,41 @@
%<*package>
% \fi
%
-% Process the package options: onside
+% Process the package options: onside
%
% \begin{macrocode}
-\ExplSyntaxOn
+\ExplSyntaxOn
%
\keys_define:nn { sidenotes }
{
- oneside .bool_set:N = \sidenotes_oneside
+ oneside .bool_set:N = \sidenotes_oneside
}
\ProcessKeysOptions { sidenotes }
% \end{macrocode}
%
% \changes{v0.91}{2012/06/03}{sidenotetextstyle is not needed any more}
-% \changes{v0.94}{2014/01/22}{change sidenote counter behavior}
+% \changes{v0.94}{2014/01/22}{change sidenote counter behavior}
%
% We need a counter similar to the footnote counter.
%
% \begin{macrocode}
-\newcounter{sidenote} % make a counter
-\setcounter{sidenote}{1} % init the counter
+\newcounter{sidenote} % make a counter
+\setcounter{sidenote}{1} % init the counter
% \end{macrocode}
-%
-% \noindent The \LaTeX3 parts concerning the optional arguments should not
-% distinguish between an empty bracket pair and no optional
-% argument. This is required to keep macros with two leading
+%
+% \noindent The \LaTeX3 parts concerning the optional arguments should not
+% distinguish between an empty bracket pair and no optional
+% argument. This is required to keep macros with two leading
% optional arguments.
%
+% \changes{v1.20}{2024/09/12}{Allow long arguments.}
+%
% \begin{macrocode}
-\DeclareExpandableDocumentCommand{\IfNoValueOrEmptyTF}{ m m m }
+\DeclareExpandableDocumentCommand{\IfNoValueOrEmptyTF}{ m +m +m }
{
\IfNoValueTF{#1}
- {#2}
- {\tl_if_empty:nTF {#1} {#2} {#3}}
+ {#2}
+ {\tl_if_empty:nTF {#1} {#2} {#3}}
}
% \end{macrocode}
%
@@ -237,28 +239,28 @@
% \begin{macrocode}
\NewDocumentCommand \@sidenotes@thesidenotemark { m }
{
- \leavevmode
- \ifhmode
+ \leavevmode
+ \ifhmode
\edef \@x@sf {\the \spacefactor }
- \nobreak
- \fi
- \hbox {\@textsuperscript {\normalfont #1 }}
- \ifhmode
- \spacefactor \@x@sf
- \fi
+ \nobreak
+ \fi
+ \hbox {\@textsuperscript {\normalfont #1 }}
+ \ifhmode
+ \spacefactor \@x@sf
+ \fi
\relax
}
%
\NewDocumentCommand \@sidenotes@multisign { } {3sp}
%
-\NewDocumentCommand \@sidenotes@multimarker { }
+\NewDocumentCommand \@sidenotes@multimarker { }
{
\kern-\@sidenotes@multisign
- \kern\@sidenotes@multisign\relax
+ \kern\@sidenotes@multisign\relax
}
%
-\NewDocumentCommand \@sidenotes@multichecker { }
-{
+\NewDocumentCommand \@sidenotes@multichecker { }
+{
\dim_compare:nNnTF \lastkern = \@sidenotes@multisign
{\@sidenotes@thesidenotemark{,}}
{}
@@ -269,33 +271,35 @@
% \changes{v0.97}{2014/05/27}{introduce an internal macro to place the marginal text}
%
% \noindent Introduce an internal macro to place the marginal text. Use
-% margin note in case an offset is given and marginpar otherwise.
+% margin note in case an offset is given and marginpar otherwise.
+%
+% \changes{v1.20}{2024/09/12}{Allow long arguments.}
%
% \begin{macrocode}
-\NewDocumentCommand \@sidenotes@placemarginal { m m }
-{
+\NewDocumentCommand \@sidenotes@placemarginal { +m +m }
+{
\IfNoValueOrEmptyTF{#1}
- {\marginpar{#2}}
- {\marginnote{#2}[#1]}
+ {\marginpar{#2}}
+ {\marginnote{#2}[#1]}
}
%
% \end{macrocode}
%
% \begin{macro}{\sidenote}
-%
-% Introduce the \verb+\sidenote+ macro with two optional
+%
+% Introduce the \verb+\sidenote+ macro with two optional
% arguments to set the number and the offset.
%
% \changes{v0.53}{2011/10/07}{bugfix, now optional number and offset possible}
% \changes{v0.80}{2011/11/10}{unstar the newcommand.}
-% \changes{v0.81}{2011/11/29}{added a comma between subsequent sidenotes}
-% \changes{v0.90}{2012/06/02}{add optional offset for sidenote}
+% \changes{v0.81}{2011/11/29}{added a comma between subsequent sidenotes}
+% \changes{v0.90}{2012/06/02}{add optional offset for sidenote}
% \changes{v0.93}{2012/04/17}{removed mandatory whitespace, new ifnextchar takes care of that}
% \changes{v0.94}{2014/01/11}{use xparse syntax}
%
% \begin{macrocode}
-\NewDocumentCommand \sidenote { o o +m }
-{
+\NewDocumentCommand \sidenote { o o +m }
+{
\sidenotemark[#1]
\sidenotetext[#1][#2]{#3}
\@sidenotes@multimarker
@@ -311,8 +315,8 @@
% \changes{v0.96}{2014/02/14}{increase the sidenote counter in sidenotetext now}
%
% \begin{macrocode}
-\NewDocumentCommand \sidenotemark { o }
-{
+\NewDocumentCommand \sidenotemark { o }
+{
\@sidenotes@multichecker
\IfNoValueOrEmptyTF{#1}
{\@sidenotes@thesidenotemark{\thesidenote}}
@@ -324,7 +328,7 @@
%
% \begin{macro}{\sidenotetext}
%
-% Sidenotetext is supposed to work similarly to footnotetext. The additional,
+% Sidenotetext is supposed to work similarly to footnotetext. The additional,
% optional argument sets the offset.
%
% \changes{v0.80}{2011/11/10}{unstar the newcommand.}
@@ -333,10 +337,10 @@
% \changes{v0.94}{2014/01/11}{use xparse syntax, change counter behavior}
%
% \begin{macrocode}
-\NewDocumentCommand \sidenotetext { o o +m }
-{
+\NewDocumentCommand \sidenotetext { o o +m }
+{
\IfNoValueOrEmptyTF{#1}
- {
+ {
\@sidenotes@placemarginal{#2}{\textsuperscript{\thesidenote}{}~#3}
\refstepcounter{sidenote}
}
@@ -348,18 +352,18 @@
% \begin{macro}{\sidecaption}
%
% \changes{v0.91}{2012/06/03}{sidecaption* accompanies sidecaption}
-% \changes{v0.94}{2014/01/22}{use xparse syntax}
+% \changes{v0.94}{2014/01/22}{use xparse syntax}
%
-% Sidecaption puts the caption in the margin. It never floats with the other
+% Sidecaption puts the caption in the margin. It never floats with the other
% text in the margin, since it has to be next to the figure.
% Sidecaption* works similarly to sidecaption, but without an entry.
%
% \begin{macrocode}
\DeclareCaptionStyle{sidecaption}{font=footnotesize}
-\NewDocumentCommand \sidecaption {s o o m}
-{
+\NewDocumentCommand \sidecaption {s o o m}
+{
\captionsetup{style=sidecaption}
- \IfBooleanTF{#1}
+ \IfBooleanTF{#1}
{ % starred
\IfNoValueOrEmptyTF{#2}
{\marginnote{\caption*{#4}}}
@@ -381,15 +385,15 @@
%
% \changes{v0.3}{2011/09/29}{define the sidefigure enviroment without the environ package}
% \changes{v0.90}{2012/06/02}{the optional offset parameter is back, renamed environment from sidefigure to marginfigure}
-% \changes{v0.94}{2014/01/22}{use xparse syntax}
+% \changes{v0.94}{2014/01/22}{use xparse syntax}
%
-% The marginfigure environment is similar to the figure environment. But the
+% The marginfigure environment is similar to the figure environment. But the
% figure is put in the margin.
%
% \begin{macrocode}
\newsavebox{\@sidenotes@marginfigurebox}
\DeclareCaptionStyle{marginfigure}{font=footnotesize}
-\NewDocumentEnvironment{marginfigure} { o }
+\NewDocumentEnvironment{marginfigure} { o }
{
\begin{lrbox}{\@sidenotes@marginfigurebox}
\begin{minipage}{\marginparwidth}
@@ -407,9 +411,9 @@
%
% \changes{v0.4}{2011/09/30}{define the sidetable enviroment without the environ package}
% \changes{v0.90}{2012/06/02}{the optional offset parameter is back, renamed environment from sidetable to margintable}
-% \changes{v0.94}{2014/01/22}{use xparse syntax}
+% \changes{v0.94}{2014/01/22}{use xparse syntax}
%
-% The margintable is similar to the table environment. But the table
+% The margintable is similar to the table environment. But the table
% is put in the margin.
%
% \begin{macrocode}
@@ -433,11 +437,12 @@
%
% \changes{v0.85}{2011/06/01}{added the figure* environment}
% \changes{v0.97}{2014/05/27}{use adjustwidth in figure* environment}
+% \changes{v1.10}{2020/04/05}{address issue with figures across the full width}
%
-% The figure* environment provides a figure environment for figures that
+% The figure* environment provides a figure environment for figures that
% span across the full page (text plus margin width).
%
-% \begin{macrocode}
+% \begin{macrocode}
\AtBeginDocument{%
\newlength{\@sidenotes@extrawidth}
\setlength{\@sidenotes@extrawidth}{\marginparwidth}
@@ -468,9 +473,11 @@
{
\begin{figure}[#1]
\begin{autoadjustwidth}{}{-\@sidenotes@extrawidth}
+ \begin{minipage}{\linewidth}
\captionsetup{style=widefigure}
}
{
+ \end{minipage}
\end{autoadjustwidth}
\end{figure}
}
@@ -481,19 +488,22 @@
%
% \changes{v0.85}{2011/06/01}{added the table* environment}
% \changes{v0.97}{2014/05/27}{use adjustwidth in table* environment}
+% \changes{v1.10}{2020/04/05}{address issue with tables across the full width}
%
-% The table* environment provides a table environment for figures across
+% The table* environment provides a table environment for figures across
% text and margin width.
%
-% \begin{macrocode}
+% \begin{macrocode}
\DeclareCaptionStyle{widetable}{font=footnotesize}
\RenewDocumentEnvironment{table*}{ O{htbp} }
{
\begin{table}[#1]
\begin{autoadjustwidth}{}{-\@sidenotes@extrawidth}
+ \begin{minipage}{\linewidth}
\captionsetup{style=widetable}
}
{
+ \end{minipage}
\end{autoadjustwidth}
\end{table}
}
diff --git a/macros/latex/contrib/sidenotes/sidenotes.ins b/macros/latex/contrib/sidenotes/sidenotes.ins
index d6b5ebd8a8..7a21aa0515 100644
--- a/macros/latex/contrib/sidenotes/sidenotes.ins
+++ b/macros/latex/contrib/sidenotes/sidenotes.ins
@@ -8,7 +8,7 @@
%% http://www.latex-project.org/lppl.txt
%% and version 1.3 or later is part of all distributions of LaTeX
%% version 2003/12/01 or later.
-%%
+%%
%% The author of this work is Andy Thomas
%%
@@ -21,7 +21,7 @@
IMPORTANT NOTE:
-This is a generated file and you are not allowed to distribute it
+This is a generated file and you are not allowed to distribute it
without the source of the work. See below about more informations
about the files the work consists of.
diff --git a/macros/latex/contrib/sidenotes/sidenotes.pdf b/macros/latex/contrib/sidenotes/sidenotes.pdf
index 31e4fb443e..e0363aa442 100644
--- a/macros/latex/contrib/sidenotes/sidenotes.pdf
+++ b/macros/latex/contrib/sidenotes/sidenotes.pdf
Binary files differ
diff --git a/macros/latex/contrib/tagpdf/README.md b/macros/latex/contrib/tagpdf/README.md
index edcdc6b5e6..243b7c398e 100644
--- a/macros/latex/contrib/tagpdf/README.md
+++ b/macros/latex/contrib/tagpdf/README.md
@@ -1,6 +1,6 @@
#tagpdf — A package to create tagged pdf
-Packageversion: 0.99d
-Packagedate: 2024/08/02
+Packageversion: 0.99e
+Packagedate: 2024/09/11
Author: Ulrike Fischer, LaTeX Project Team
## License
diff --git a/macros/latex/contrib/tagpdf/ex-AF-file.pdf b/macros/latex/contrib/tagpdf/ex-AF-file.pdf
index 9ba962e1e3..dd578dd350 100644
--- a/macros/latex/contrib/tagpdf/ex-AF-file.pdf
+++ b/macros/latex/contrib/tagpdf/ex-AF-file.pdf
@@ -1,11 +1,11 @@
%PDF-2.0
%
22 0 obj
-<< /Subtype /application#2Fx-tex/Type /EmbeddedFile /Params<</ModDate (D:20240802125547+02'00') /Size 151 /CheckSum (D4716966C44F441B4E4C1D2DD929683B) >> /Length 151 >>
+<< /Subtype /application#2Fx-tex/Type /EmbeddedFile /Params<</ModDate (D:20240911230058+02'00') /Size 151 /CheckSum (0D5C479FDEEFE59350963296D27AAE46) >> /Length 151 >>
stream
%% LaTeX2e file `example-input-file.tex'
%% generated by the `filecontents' environment
-%% from source `ex-AF-file' on 2024/08/02.
+%% from source `ex-AF-file' on 2024/09/11.
%%
Additional info!
@@ -15,7 +15,7 @@ endobj
<< /Type /Filespec /AFRelationship /Unspecified /F (example-input-file.tex) /UF <FEFF006500780061006D0070006C0065002D0069006E007000750074002D00660069006C0065002E007400650078> /EF<</F 22 0 R/UF 22 0 R>> >>
endobj
25 0 obj
-<< /Subtype /text#2Fplain/Type /EmbeddedFile /Params<</ModDate (D:20240802) >> /Length 19 >>
+<< /Subtype /text#2Fplain/Type /EmbeddedFile /Params<</ModDate (D:20240911) >> /Length 19 >>
stream
Bär with teh shirt
endstream
@@ -24,7 +24,7 @@ endobj
<< /Type /Filespec /AFRelationship /Supplement /F (tag-AFfile1.txt) /UF <FEFF007400610067002D0041004600660069006C00650031002E007400780074> /EF<</F 25 0 R/UF 25 0 R>> >>
endobj
28 0 obj
-<< /Subtype /text#2Fplain/Type /EmbeddedFile /Params<</ModDate (D:20240802) >> /Length 4 >>
+<< /Subtype /text#2Fplain/Type /EmbeddedFile /Params<</ModDate (D:20240911) >> /Length 4 >>
stream
Duck
endstream
@@ -33,7 +33,7 @@ endobj
<< /Type /Filespec /AFRelationship /Supplement /F (tag-AFfile2.txt) /UF <FEFF007400610067002D0041004600660069006C00650032002E007400780074> /EF<</F 28 0 R/UF 28 0 R>> >>
endobj
31 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11382 >>
+<< /Type /Metadata /Subtype /XML /Length 11713 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -88,6 +88,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -242,17 +248,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:56:09+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:01:13+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-AF-file.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:56:09+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:56:09+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:56:09+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:01:13+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:01:13+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:01:13+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:38d5a844-2217-4081-87cc-b2129dc357a6</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:3ff2b426-7c06-4861-8f14-4e8e04ac9b4c</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:09f27344-5b75-463c-8877-423748155ecb</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -347,7 +353,7 @@ endobj
<< /Type /Namespace /NS (https://www.latex-project.org/ns/book/2022) /RoleMapNS 18 0 R >>
endobj
19 0 obj
-<< /Type /Namespace /NS (data:,BBA64916-90D9-A0B9-F592-8E68FD20F532) >>
+<< /Type /Namespace /NS (data:,B95FB03C-9D60-1F01-951E-7918FB69E933) >>
endobj
8 0 obj
[ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ]
@@ -449,59 +455,59 @@ endobj
<< /Type /Catalog /Pages 36 0 R /MarkInfo 37 0 R/Lang (de-DE)/Metadata 31 0 R/StructTreeRoot 5 0 R >>
endobj
46 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125609+02'00')/ModDate (D:20240802125609+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230113+02'00')/ModDate (D:20240911230113+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 47
0000000002 65535 f
-0000013544 00000 n
+0000013875 00000 n
0000000003 00000 f
0000000004 00000 f
0000000010 00000 f
-0000016362 00000 n
-0000013627 00000 n
-0000013838 00000 n
-0000015792 00000 n
-0000014417 00000 n
+0000016693 00000 n
+0000013958 00000 n
+0000014169 00000 n
+0000016123 00000 n
+0000014748 00000 n
0000000012 00000 f
-0000014485 00000 n
+0000014816 00000 n
0000000014 00000 f
-0000014555 00000 n
+0000014886 00000 n
0000000020 00000 f
-0000015318 00000 n
-0000014636 00000 n
-0000015596 00000 n
-0000015425 00000 n
-0000015703 00000 n
+0000015649 00000 n
+0000014967 00000 n
+0000015927 00000 n
+0000015756 00000 n
+0000016034 00000 n
0000000000 00000 f
-0000015853 00000 n
+0000016184 00000 n
0000000020 00000 n
0000000382 00000 n
-0000015966 00000 n
+0000016297 00000 n
0000000603 00000 n
0000000758 00000 n
-0000016098 00000 n
+0000016429 00000 n
0000000943 00000 n
0000001083 00000 n
-0000016230 00000 n
+0000016561 00000 n
0000001268 00000 n
-0000013481 00000 n
-0000013346 00000 n
-0000012740 00000 n
-0000020115 00000 n
-0000020469 00000 n
-0000013591 00000 n
-0000013684 00000 n
-0000013801 00000 n
-0000016482 00000 n
-0000018931 00000 n
-0000016668 00000 n
-0000019152 00000 n
-0000020269 00000 n
-0000020531 00000 n
-0000020649 00000 n
+0000013812 00000 n
+0000013677 00000 n
+0000013071 00000 n
+0000020446 00000 n
+0000020800 00000 n
+0000013922 00000 n
+0000014015 00000 n
+0000014132 00000 n
+0000016813 00000 n
+0000019262 00000 n
+0000016999 00000 n
+0000019483 00000 n
+0000020600 00000 n
+0000020862 00000 n
+0000020980 00000 n
trailer
-<< /Size 47 /Root 45 0 R /Info 46 0 R /ID [ <E2F9D94DBDFC11D2EE5801BA51FD5C99> <E2F9D94DBDFC11D2EE5801BA51FD5C99> ] >>
+<< /Size 47 /Root 45 0 R /Info 46 0 R /ID [ <EF11D0BC0166BADB0809C3789FE9235A> <EF11D0BC0166BADB0809C3789FE9235A> ] >>
startxref
-20872
+21203
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf b/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf
index f64d4e66bf..049d60252f 100644
--- a/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf
+++ b/macros/latex/contrib/tagpdf/ex-alt-actualtext.pdf
Binary files differ
diff --git a/macros/latex/contrib/tagpdf/ex-attribute.pdf b/macros/latex/contrib/tagpdf/ex-attribute.pdf
index feda9e252a..41fc96be1c 100644
--- a/macros/latex/contrib/tagpdf/ex-attribute.pdf
+++ b/macros/latex/contrib/tagpdf/ex-attribute.pdf
@@ -7,7 +7,7 @@ endobj
<< <</O /Layout /Borderstyle /Dotted >> >>
endobj
21 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11384 >>
+<< /Type /Metadata /Subtype /XML /Length 11715 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -62,6 +62,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -216,17 +222,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:57:08+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:01:57+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-attribute.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:57:08+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:57:08+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:57:08+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:01:57+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:01:57+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:01:57+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:7a9cf910-1c19-429a-8f24-339c62d8a57f</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:b262e437-7e89-4c42-8e29-bedae4c498b6</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:189bb4fa-8af3-4644-8654-2baf81e10776</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -450,51 +456,51 @@ endobj
<< /Type /Catalog /Pages 26 0 R /MarkInfo 27 0 R/Lang (de_DE)/Metadata 21 0 R/StructTreeRoot 5 0 R >>
endobj
38 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/Title (Title)/CreationDate (D:20240802125708+02'00')/ModDate (D:20240802125708+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/Title (Title)/CreationDate (D:20240911230157+02'00')/ModDate (D:20240911230157+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 39
0000000002 65535 f
-0000012845 00000 n
+0000013176 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000014965 00000 n
-0000012928 00000 n
-0000013247 00000 n
+0000015296 00000 n
+0000013259 00000 n
+0000013578 00000 n
0000000000 00000 f
-0000013953 00000 n
-0000014038 00000 n
-0000014130 00000 n
-0000014214 00000 n
-0000014304 00000 n
+0000014284 00000 n
+0000014369 00000 n
+0000014461 00000 n
+0000014545 00000 n
+0000014635 00000 n
0000000020 00000 n
0000000071 00000 n
-0000014433 00000 n
-0000014573 00000 n
-0000014657 00000 n
-0000014747 00000 n
-0000014856 00000 n
+0000014764 00000 n
+0000014904 00000 n
+0000014988 00000 n
+0000015078 00000 n
+0000015187 00000 n
0000000132 00000 n
-0000012758 00000 n
-0000012616 00000 n
-0000011606 00000 n
-0000017305 00000 n
-0000017659 00000 n
-0000012892 00000 n
-0000012992 00000 n
-0000013210 00000 n
-0000013826 00000 n
-0000015083 00000 n
-0000016261 00000 n
-0000015160 00000 n
-0000015234 00000 n
-0000016497 00000 n
-0000017459 00000 n
-0000017721 00000 n
-0000017839 00000 n
+0000013089 00000 n
+0000012947 00000 n
+0000011937 00000 n
+0000017636 00000 n
+0000017990 00000 n
+0000013223 00000 n
+0000013323 00000 n
+0000013541 00000 n
+0000014157 00000 n
+0000015414 00000 n
+0000016592 00000 n
+0000015491 00000 n
+0000015565 00000 n
+0000016828 00000 n
+0000017790 00000 n
+0000018052 00000 n
+0000018170 00000 n
trailer
-<< /Size 39 /Root 37 0 R /Info 38 0 R /ID [ <2033D8BFB67E1F1EDFB190E1DEC10A2C> <2033D8BFB67E1F1EDFB190E1DEC10A2C> ] >>
+<< /Size 39 /Root 37 0 R /Info 38 0 R /ID [ <2AFD44752DDB6BFD19BAE550F03B3C96> <2AFD44752DDB6BFD19BAE550F03B3C96> ] >>
startxref
-18076
+18407
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-formula-problem.pdf b/macros/latex/contrib/tagpdf/ex-formula-problem.pdf
index 637338d16f..a829a64a59 100644
--- a/macros/latex/contrib/tagpdf/ex-formula-problem.pdf
+++ b/macros/latex/contrib/tagpdf/ex-formula-problem.pdf
@@ -30,7 +30,7 @@ endobj
<< /ExtGState 1 0 R /Font << /F15 15 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
19 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11390 >>
+<< /Type /Metadata /Subtype /XML /Length 11721 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -85,6 +85,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -239,17 +245,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:57:37+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:02:18+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-formula-problem.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:57:37+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:57:37+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:57:37+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:02:18+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:02:18+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:02:18+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:8eb2ce1d-b2ec-440a-8bc2-73733eb3eeb0</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:8fbc3896-5f57-401a-81d8-1fdb02abac8a</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:348a8a14-64eb-4e05-81dd-2888a320cd86</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>2</prism:pageCount>
</rdf:Description>
@@ -425,46 +431,46 @@ endobj
<< /Type /Catalog /Pages 16 0 R /MarkInfo 23 0 R/Lang (de-DE)/Metadata 19 0 R/StructTreeRoot 5 0 R >>
endobj
33 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125737+02'00')/ModDate (D:20240802125737+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230218+02'00')/ModDate (D:20240911230218+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 34
0000000002 65535 f
-0000012816 00000 n
+0000013147 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000014379 00000 n
-0000012899 00000 n
-0000013137 00000 n
+0000014710 00000 n
+0000013230 00000 n
+0000013468 00000 n
0000000000 00000 f
-0000013716 00000 n
-0000013823 00000 n
-0000013929 00000 n
+0000014047 00000 n
+0000014154 00000 n
+0000014260 00000 n
0000000637 00000 n
0000000502 00000 n
0000000020 00000 n
-0000018463 00000 n
-0000018817 00000 n
-0000014041 00000 n
-0000014147 00000 n
+0000018794 00000 n
+0000019148 00000 n
+0000014372 00000 n
+0000014478 00000 n
0000000724 00000 n
-0000012729 00000 n
-0000012594 00000 n
-0000012204 00000 n
-0000012863 00000 n
-0000012969 00000 n
-0000013100 00000 n
-0000014480 00000 n
-0000017236 00000 n
-0000014681 00000 n
-0000014757 00000 n
-0000017472 00000 n
-0000018617 00000 n
-0000018886 00000 n
-0000019004 00000 n
+0000013060 00000 n
+0000012925 00000 n
+0000012535 00000 n
+0000013194 00000 n
+0000013300 00000 n
+0000013431 00000 n
+0000014811 00000 n
+0000017567 00000 n
+0000015012 00000 n
+0000015088 00000 n
+0000017803 00000 n
+0000018948 00000 n
+0000019217 00000 n
+0000019335 00000 n
trailer
-<< /Size 34 /Root 32 0 R /Info 33 0 R /ID [ <84EDE341B761805B059537E407E8C0CD> <84EDE341B761805B059537E407E8C0CD> ] >>
+<< /Size 34 /Root 32 0 R /Info 33 0 R /ID [ <E4A77C91007F4B25FCB6D6A6D69C4C5D> <E4A77C91007F4B25FCB6D6A6D69C4C5D> ] >>
startxref
-19227
+19558
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-list.pdf b/macros/latex/contrib/tagpdf/ex-list.pdf
index 381477d829..f59334e857 100644
--- a/macros/latex/contrib/tagpdf/ex-list.pdf
+++ b/macros/latex/contrib/tagpdf/ex-list.pdf
@@ -1,7 +1,7 @@
%PDF-1.7
%
48 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11376 >>
+<< /Type /Metadata /Subtype /XML /Length 11707 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -56,6 +56,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -210,17 +216,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:58:08+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:02:40+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-list.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:58:08+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:58:08+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:58:08+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:02:40+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:02:40+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:02:40+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:4c749825-1de7-414c-879f-29e4d0bef66e</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:0803684d-fad7-4d08-8dc2-c5108f24d889</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:37f1fc97-1b37-45e9-8bc1-1447b36d46cb</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -654,85 +660,85 @@ endobj
<< /Type /Catalog /Pages 54 0 R /MarkInfo 55 0 R/Lang (en)/Metadata 48 0 R/StructTreeRoot 5 0 R >>
endobj
72 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125808+02'00')/ModDate (D:20240802125808+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230240+02'00')/ModDate (D:20240911230240+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 73
0000000002 65535 f
-0000013509 00000 n
+0000013840 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000019047 00000 n
-0000013592 00000 n
-0000014431 00000 n
+0000019378 00000 n
+0000013923 00000 n
+0000014762 00000 n
0000000000 00000 f
-0000015228 00000 n
-0000015329 00000 n
-0000015405 00000 n
-0000015481 00000 n
-0000015568 00000 n
-0000015675 00000 n
-0000015765 00000 n
-0000015875 00000 n
-0000015959 00000 n
-0000016047 00000 n
-0000016170 00000 n
-0000016260 00000 n
-0000016370 00000 n
-0000016454 00000 n
-0000016542 00000 n
-0000016665 00000 n
-0000016752 00000 n
-0000016863 00000 n
-0000016953 00000 n
-0000017063 00000 n
-0000017147 00000 n
-0000017235 00000 n
-0000017358 00000 n
-0000017448 00000 n
-0000017558 00000 n
-0000017642 00000 n
-0000017730 00000 n
-0000017853 00000 n
-0000017940 00000 n
-0000018055 00000 n
-0000018145 00000 n
-0000018255 00000 n
-0000018339 00000 n
-0000018427 00000 n
-0000018550 00000 n
-0000018640 00000 n
-0000018751 00000 n
-0000018835 00000 n
-0000018923 00000 n
+0000015559 00000 n
+0000015660 00000 n
+0000015736 00000 n
+0000015812 00000 n
+0000015899 00000 n
+0000016006 00000 n
+0000016096 00000 n
+0000016206 00000 n
+0000016290 00000 n
+0000016378 00000 n
+0000016501 00000 n
+0000016591 00000 n
+0000016701 00000 n
+0000016785 00000 n
+0000016873 00000 n
+0000016996 00000 n
+0000017083 00000 n
+0000017194 00000 n
+0000017284 00000 n
+0000017394 00000 n
+0000017478 00000 n
+0000017566 00000 n
+0000017689 00000 n
+0000017779 00000 n
+0000017889 00000 n
+0000017973 00000 n
+0000018061 00000 n
+0000018184 00000 n
+0000018271 00000 n
+0000018386 00000 n
+0000018476 00000 n
+0000018586 00000 n
+0000018670 00000 n
+0000018758 00000 n
+0000018881 00000 n
+0000018971 00000 n
+0000019082 00000 n
+0000019166 00000 n
+0000019254 00000 n
0000000020 00000 n
-0000013410 00000 n
-0000013268 00000 n
-0000011486 00000 n
-0000029174 00000 n
-0000022222 00000 n
-0000029528 00000 n
-0000013556 00000 n
-0000013712 00000 n
-0000014394 00000 n
-0000015023 00000 n
-0000019165 00000 n
-0000021124 00000 n
-0000019297 00000 n
-0000019371 00000 n
-0000021358 00000 n
-0000022373 00000 n
-0000022570 00000 n
-0000027709 00000 n
-0000022906 00000 n
-0000023029 00000 n
-0000027945 00000 n
-0000029328 00000 n
-0000029590 00000 n
-0000029705 00000 n
+0000013741 00000 n
+0000013599 00000 n
+0000011817 00000 n
+0000029505 00000 n
+0000022553 00000 n
+0000029859 00000 n
+0000013887 00000 n
+0000014043 00000 n
+0000014725 00000 n
+0000015354 00000 n
+0000019496 00000 n
+0000021455 00000 n
+0000019628 00000 n
+0000019702 00000 n
+0000021689 00000 n
+0000022704 00000 n
+0000022901 00000 n
+0000028040 00000 n
+0000023237 00000 n
+0000023360 00000 n
+0000028276 00000 n
+0000029659 00000 n
+0000029921 00000 n
+0000030036 00000 n
trailer
-<< /Size 73 /Root 71 0 R /Info 72 0 R /ID [ <0EE2DD31789AD5C7E80F8407D72CF075> <0EE2DD31789AD5C7E80F8407D72CF075> ] >>
+<< /Size 73 /Root 71 0 R /Info 72 0 R /ID [ <7B8BCECC9F7E2EB74D40849C3F2B689E> <7B8BCECC9F7E2EB74D40849C3F2B689E> ] >>
startxref
-29928
+30259
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf b/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf
index 6d60e10736..eb6042ce92 100644
--- a/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf
+++ b/macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf
@@ -34,7 +34,7 @@ endobj
<< /ExtGState 1 0 R /Font << /F15 13 0 R >> /ProcSet [ /PDF /Text ] >>
endobj
15 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11401 >>
+<< /Type /Metadata /Subtype /XML /Length 11732 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -89,6 +89,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -243,17 +249,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:58:35+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:03:00+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-mc-manual-para-split-obsolete.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:58:35+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:58:35+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:58:35+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:03:00+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:03:00+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:03:00+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:c33d64b4-96ec-4e48-8f27-0b3edc831547</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:075c36f4-757d-4e0f-8258-3c0a3e372d69</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:ca503309-4c77-4249-831a-bedd2cd8edde</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>2</prism:pageCount>
</rdf:Description>
@@ -413,12 +419,12 @@ endobj
<< /Type /Catalog /Pages 14 0 R /Lang (de)/Metadata 15 0 R >>
endobj
25 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125835+02'00')/ModDate (D:20240802125835+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230300+02'00')/ModDate (D:20240911230300+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 26
0000000002 65535 f
-0000016851 00000 n
+0000017182 00000 n
0000000003 00000 f
0000000004 00000 f
0000000005 00000 f
@@ -427,24 +433,24 @@ xref
0000000008 00000 f
0000000000 00000 f
0000002976 00000 n
-0000016645 00000 n
+0000016976 00000 n
0000003094 00000 n
0000000020 00000 n
-0000023472 00000 n
-0000023826 00000 n
+0000023803 00000 n
+0000024157 00000 n
0000003181 00000 n
-0000016764 00000 n
-0000014672 00000 n
-0000016898 00000 n
-0000022021 00000 n
-0000017205 00000 n
-0000017280 00000 n
-0000022257 00000 n
-0000023626 00000 n
-0000023894 00000 n
-0000023972 00000 n
+0000017095 00000 n
+0000015003 00000 n
+0000017229 00000 n
+0000022352 00000 n
+0000017536 00000 n
+0000017611 00000 n
+0000022588 00000 n
+0000023957 00000 n
+0000024225 00000 n
+0000024303 00000 n
trailer
-<< /Size 26 /Root 24 0 R /Info 25 0 R /ID [ <1A7EFBAD198841A82D20467F858B3B6C> <1A7EFBAD198841A82D20467F858B3B6C> ] >>
+<< /Size 26 /Root 24 0 R /Info 25 0 R /ID [ <715DD84A6B76368D6021B514623D2DCA> <715DD84A6B76368D6021B514623D2DCA> ] >>
startxref
-24195
+24526
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-softhyphen.pdf b/macros/latex/contrib/tagpdf/ex-softhyphen.pdf
index 09a8d8aca0..4cfd86fbf0 100644
--- a/macros/latex/contrib/tagpdf/ex-softhyphen.pdf
+++ b/macros/latex/contrib/tagpdf/ex-softhyphen.pdf
@@ -1,7 +1,7 @@
%PDF-1.7
%
14 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11382 >>
+<< /Type /Metadata /Subtype /XML /Length 11713 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -56,6 +56,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -210,17 +216,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:59:01+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:03:19+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-softhyphen.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:59:01+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:59:01+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:59:01+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:03:19+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:03:19+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:03:19+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:aa82e685-4098-469d-861c-3c45dfc700c7</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:994c7ab3-d509-4a5b-88b5-92bca5031c75</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:46cfccca-4918-4c12-8e3d-cfa2826bcdd2</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -393,43 +399,43 @@ endobj
<< /Type /Catalog /Pages 19 0 R /MarkInfo 20 0 R/Lang (de)/Metadata 14 0 R/StructTreeRoot 5 0 R >>
endobj
30 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125901+02'00')/ModDate (D:20240802125901+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230319+02'00')/ModDate (D:20240911230319+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 31
0000000002 65535 f
-0000012360 00000 n
+0000012691 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000013738 00000 n
-0000012443 00000 n
-0000012661 00000 n
+0000014069 00000 n
+0000012774 00000 n
+0000012992 00000 n
0000000000 00000 f
-0000013253 00000 n
-0000013346 00000 n
-0000013432 00000 n
-0000013542 00000 n
-0000013628 00000 n
+0000013584 00000 n
+0000013677 00000 n
+0000013763 00000 n
+0000013873 00000 n
+0000013959 00000 n
0000000020 00000 n
-0000012273 00000 n
-0000012138 00000 n
-0000011492 00000 n
-0000017687 00000 n
-0000018051 00000 n
-0000012407 00000 n
-0000012493 00000 n
-0000012624 00000 n
-0000013839 00000 n
-0000016487 00000 n
-0000013993 00000 n
-0000014167 00000 n
-0000016727 00000 n
-0000017846 00000 n
-0000018113 00000 n
-0000018228 00000 n
+0000012604 00000 n
+0000012469 00000 n
+0000011823 00000 n
+0000018018 00000 n
+0000018382 00000 n
+0000012738 00000 n
+0000012824 00000 n
+0000012955 00000 n
+0000014170 00000 n
+0000016818 00000 n
+0000014324 00000 n
+0000014498 00000 n
+0000017058 00000 n
+0000018177 00000 n
+0000018444 00000 n
+0000018559 00000 n
trailer
-<< /Size 31 /Root 29 0 R /Info 30 0 R /ID [ <EECF5F575625EC21F0BEE870E572FEB1> <EECF5F575625EC21F0BEE870E572FEB1> ] >>
+<< /Size 31 /Root 29 0 R /Info 30 0 R /ID [ <B12DC08369E214B53B74B54D34A58FBB> <B12DC08369E214B53B74B54D34A58FBB> ] >>
startxref
-18451
+18782
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf b/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf
index 35e1d0609a..1c3171a09b 100644
--- a/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf
+++ b/macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf
@@ -1,7 +1,7 @@
%PDF-1.5
%
10 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11391 >>
+<< /Type /Metadata /Subtype /XML /Length 11722 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -56,6 +56,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -210,17 +216,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:59:25+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:03:37+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-spaceglyph-listings.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:59:25+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:59:25+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:59:25+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:03:37+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:03:37+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:03:37+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:acdc2435-bf29-4e54-8d09-1c9b6dc32038</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:c59181fc-bb69-430b-8f90-90206d3ba579</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:6b2bca4b-96ca-4ac0-8463-b09fd02fe20c</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -354,39 +360,39 @@ endobj
<< /Type /Catalog /Pages 15 0 R /MarkInfo 16 0 R/Lang (de)/Metadata 10 0 R/StructTreeRoot 5 0 R >>
endobj
26 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125925+02'00')/ModDate (D:20240802125925+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230337+02'00')/ModDate (D:20240911230337+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 27
0000000002 65535 f
-0000012007 00000 n
+0000012338 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000012886 00000 n
-0000012090 00000 n
-0000012233 00000 n
+0000013217 00000 n
+0000012421 00000 n
+0000012564 00000 n
0000000000 00000 f
-0000012812 00000 n
+0000013143 00000 n
0000000020 00000 n
-0000011920 00000 n
-0000011785 00000 n
-0000011501 00000 n
-0000015069 00000 n
-0000015423 00000 n
-0000012054 00000 n
-0000012125 00000 n
-0000012196 00000 n
-0000012987 00000 n
-0000014053 00000 n
-0000013042 00000 n
-0000013117 00000 n
-0000014289 00000 n
-0000015223 00000 n
-0000015485 00000 n
-0000015600 00000 n
+0000012251 00000 n
+0000012116 00000 n
+0000011832 00000 n
+0000015400 00000 n
+0000015754 00000 n
+0000012385 00000 n
+0000012456 00000 n
+0000012527 00000 n
+0000013318 00000 n
+0000014384 00000 n
+0000013373 00000 n
+0000013448 00000 n
+0000014620 00000 n
+0000015554 00000 n
+0000015816 00000 n
+0000015931 00000 n
trailer
-<< /Size 27 /Root 25 0 R /Info 26 0 R /ID [ <EC0A5DEABF5EE1A293FAD60891A0BF63> <EC0A5DEABF5EE1A293FAD60891A0BF63> ] >>
+<< /Size 27 /Root 25 0 R /Info 26 0 R /ID [ <797172104CB057DD5ADF295BF9F5263B> <797172104CB057DD5ADF295BF9F5263B> ] >>
startxref
-15823
+16154
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf b/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf
index 73ce1c0602..e9fe3d6711 100644
--- a/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf
+++ b/macros/latex/contrib/tagpdf/ex-structure-obsolete.pdf
@@ -1,7 +1,7 @@
%PDF-1.7
%
20 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11390 >>
+<< /Type /Metadata /Subtype /XML /Length 11721 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -56,6 +56,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -210,17 +216,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T12:59:50+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:03:56+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-structure-obsolete.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T12:59:50+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T12:59:50+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T12:59:50+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:03:56+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:03:56+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:03:56+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:bf5e4a2b-cfa9-4fc5-878c-8f9d2ee95445</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:2ccba557-e5ae-4703-80db-28b73a88c1cd</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:7e1e767d-58e8-4df8-8bc1-54321b804575</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -526,56 +532,56 @@ endobj
<< /Type /Catalog /Pages 26 0 R /MarkInfo 27 0 R/Lang (de)/Metadata 20 0 R/StructTreeRoot 5 0 R >>
endobj
43 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802125950+02'00')/ModDate (D:20240802125950+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230356+02'00')/ModDate (D:20240911230356+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 44
0000000002 65535 f
-0000012794 00000 n
+0000013125 00000 n
0000000003 00000 f
0000000004 00000 f
0000000008 00000 f
-0000014930 00000 n
-0000012877 00000 n
-0000013226 00000 n
+0000015261 00000 n
+0000013208 00000 n
+0000013557 00000 n
0000000000 00000 f
-0000013818 00000 n
-0000013903 00000 n
-0000014001 00000 n
-0000014109 00000 n
-0000014217 00000 n
-0000014306 00000 n
-0000014396 00000 n
-0000014506 00000 n
-0000014618 00000 n
-0000014708 00000 n
-0000014818 00000 n
+0000014149 00000 n
+0000014234 00000 n
+0000014332 00000 n
+0000014440 00000 n
+0000014548 00000 n
+0000014637 00000 n
+0000014727 00000 n
+0000014837 00000 n
+0000014949 00000 n
+0000015039 00000 n
+0000015149 00000 n
0000000020 00000 n
-0000012695 00000 n
-0000012560 00000 n
-0000011500 00000 n
-0000023013 00000 n
-0000019779 00000 n
-0000023361 00000 n
-0000012841 00000 n
-0000012955 00000 n
-0000013189 00000 n
-0000015031 00000 n
-0000018510 00000 n
-0000015280 00000 n
-0000015355 00000 n
-0000018746 00000 n
-0000019933 00000 n
-0000020133 00000 n
-0000021901 00000 n
-0000020270 00000 n
-0000020346 00000 n
-0000022135 00000 n
-0000023164 00000 n
-0000023423 00000 n
-0000023538 00000 n
+0000013026 00000 n
+0000012891 00000 n
+0000011831 00000 n
+0000023344 00000 n
+0000020110 00000 n
+0000023692 00000 n
+0000013172 00000 n
+0000013286 00000 n
+0000013520 00000 n
+0000015362 00000 n
+0000018841 00000 n
+0000015611 00000 n
+0000015686 00000 n
+0000019077 00000 n
+0000020264 00000 n
+0000020464 00000 n
+0000022232 00000 n
+0000020601 00000 n
+0000020677 00000 n
+0000022466 00000 n
+0000023495 00000 n
+0000023754 00000 n
+0000023869 00000 n
trailer
-<< /Size 44 /Root 42 0 R /Info 43 0 R /ID [ <AE5400E970AB8EBE6C04A229EBA70E89> <AE5400E970AB8EBE6C04A229EBA70E89> ] >>
+<< /Size 44 /Root 42 0 R /Info 43 0 R /ID [ <0419F055213D878FAD9CA09C1517FAC5> <0419F055213D878FAD9CA09C1517FAC5> ] >>
startxref
-23761
+24092
%%EOF
diff --git a/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf b/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf
index 7147cd1e91..ca3d09bd4d 100644
--- a/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf
+++ b/macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf
@@ -1,7 +1,7 @@
%PDF-2.0
%
26 0 obj
-<< /Type /Metadata /Subtype /XML /Length 11387 >>
+<< /Type /Metadata /Subtype /XML /Length 11718 >>
stream
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -56,6 +56,12 @@ stream
<pdfaProperty:category>internal</pdfaProperty:category>
<pdfaProperty:description>Year of standard</pdfaProperty:description>
</rdf:li>
+ <rdf:li rdf:parseType="Resource">
+ <pdfaProperty:name>rev</pdfaProperty:name>
+ <pdfaProperty:valueType>Integer</pdfaProperty:valueType>
+ <pdfaProperty:category>internal</pdfaProperty:category>
+ <pdfaProperty:description>Revision year of standard</pdfaProperty:description>
+ </rdf:li>
</rdf:Seq>
</pdfaSchema:property>
</rdf:li>
@@ -210,17 +216,17 @@ stream
</dc:language>
<dc:date>
<rdf:Seq>
- <rdf:li>2024-08-02T13:00:16+02:00</rdf:li>
+ <rdf:li>2024-09-11T23:04:16+02:00</rdf:li>
</rdf:Seq>
</dc:date>
<dc:format>application/pdf</dc:format>
<dc:source>ex-tagpdf-template.tex</dc:source>
<xmp:CreatorTool>LaTeX</xmp:CreatorTool>
- <xmp:CreateDate>2024-08-02T13:00:16+02:00</xmp:CreateDate>
- <xmp:ModifyDate>2024-08-02T13:00:16+02:00</xmp:ModifyDate>
- <xmp:MetadataDate>2024-08-02T13:00:16+02:00</xmp:MetadataDate>
+ <xmp:CreateDate>2024-09-11T23:04:16+02:00</xmp:CreateDate>
+ <xmp:ModifyDate>2024-09-11T23:04:16+02:00</xmp:ModifyDate>
+ <xmp:MetadataDate>2024-09-11T23:04:16+02:00</xmp:MetadataDate>
<xmpMM:DocumentID>uuid:f320abfc-f6ab-4d12-8719-d176f4d947cf</xmpMM:DocumentID>
- <xmpMM:InstanceID>uuid:3b4409f1-f3e5-4c01-86c4-a0bcea68ea38</xmpMM:InstanceID>
+ <xmpMM:InstanceID>uuid:8d57dc19-ea05-4843-8e7e-3b9d3b267d67</xmpMM:InstanceID>
<prism:complianceProfile>three</prism:complianceProfile>
<prism:pageCount>1</prism:pageCount>
</rdf:Description>
@@ -307,7 +313,7 @@ endobj
<< /Type /Namespace /NS (https://www.latex-project.org/ns/book/2022) /RoleMapNS 18 0 R >>
endobj
19 0 obj
-<< /Type /Namespace /NS (data:,25352333-84F8-941A-42AB-414B46468294) >>
+<< /Type /Namespace /NS (data:,12A4B315-916B-E36F-334B-6733F8EF6CD5) >>
endobj
8 0 obj
[ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ]
@@ -399,55 +405,55 @@ endobj
<< /Type /Catalog /Pages 31 0 R /MarkInfo 32 0 R/Lang (en)/Metadata 26 0 R/StructTreeRoot 5 0 R >>
endobj
42 0 obj
-<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240802130016+02'00')/ModDate (D:20240802130016+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
+<< /Producer (luahbtex-1.18.0)/Creator (LaTeX)/CreationDate (D:20240911230416+02'00')/ModDate (D:20240911230416+02'00') /Trapped /False /PTEX.FullBanner (This is LuaHBTeX, Version 1.18.0 (TeX Live 2024)) >>
endobj
xref
0 43
0000000002 65535 f
-0000011929 00000 n
+0000012260 00000 n
0000000003 00000 f
0000000004 00000 f
0000000010 00000 f
-0000014805 00000 n
-0000012012 00000 n
-0000012222 00000 n
-0000014240 00000 n
-0000012865 00000 n
+0000015136 00000 n
+0000012343 00000 n
+0000012553 00000 n
+0000014571 00000 n
+0000013196 00000 n
0000000012 00000 f
-0000012933 00000 n
+0000013264 00000 n
0000000014 00000 f
-0000013003 00000 n
+0000013334 00000 n
0000000020 00000 f
-0000013766 00000 n
-0000013084 00000 n
-0000014044 00000 n
-0000013873 00000 n
-0000014151 00000 n
+0000014097 00000 n
+0000013415 00000 n
+0000014375 00000 n
+0000014204 00000 n
+0000014482 00000 n
0000000000 00000 f
-0000014301 00000 n
-0000014398 00000 n
-0000014485 00000 n
-0000014572 00000 n
-0000014671 00000 n
+0000014632 00000 n
+0000014729 00000 n
+0000014816 00000 n
+0000014903 00000 n
+0000015002 00000 n
0000000020 00000 n
-0000011866 00000 n
-0000011731 00000 n
-0000011497 00000 n
-0000017426 00000 n
-0000017780 00000 n
-0000011976 00000 n
-0000012053 00000 n
-0000012185 00000 n
-0000012801 00000 n
-0000014942 00000 n
-0000016383 00000 n
-0000015029 00000 n
-0000016604 00000 n
-0000017580 00000 n
-0000017842 00000 n
-0000017957 00000 n
+0000012197 00000 n
+0000012062 00000 n
+0000011828 00000 n
+0000017757 00000 n
+0000018111 00000 n
+0000012307 00000 n
+0000012384 00000 n
+0000012516 00000 n
+0000013132 00000 n
+0000015273 00000 n
+0000016714 00000 n
+0000015360 00000 n
+0000016935 00000 n
+0000017911 00000 n
+0000018173 00000 n
+0000018288 00000 n
trailer
-<< /Size 43 /Root 41 0 R /Info 42 0 R /ID [ <42D962292B4982520E998D32C837DE43> <42D962292B4982520E998D32C837DE43> ] >>
+<< /Size 43 /Root 41 0 R /Info 42 0 R /ID [ <1F4359ECADEDD129E3F575A5A6D77264> <1F4359ECADEDD129E3F575A5A6D77264> ] >>
startxref
-18180
+18511
%%EOF
diff --git a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx
index 0ed233e2e0..752aa6be2e 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx
@@ -47,13 +47,13 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{implementation}
% \begin{macrocode}
%<@@=tag>
%<*luatex>
-\ProvidesExplFile {tagpdf-luatex.def} {2024-08-02} {0.99d}
+\ProvidesExplFile {tagpdf-luatex.def} {2024-09-11} {0.99e}
{tagpdf~driver~for~luatex}
% \end{macrocode}
% \section{Loading the lua}
@@ -114,7 +114,7 @@
\cs_set_protected:Npn \@@_prop_gput:Nnn #1 #2 #3
{
\prop_gput:Nnn #1 { #2 } { #3 }
- \lua_now:e { ltx.@@.tables.\cs_to_str:N#1 ["#2"] = "#3" }
+ \lua_now:e { ltx.@@.tables.\cs_to_str:N#1 ["#2"] = "\lua_escape:n{#3}" }
}
@@ -164,8 +164,8 @@
local ProvidesLuaModule = {
name = "tagpdf",
- version = "0.99d", --TAGVERSION
- date = "2024-08-02", --TAGDATE
+ version = "0.99e", --TAGVERSION
+ date = "2024-09-11", --TAGDATE
description = "tagpdf lua code",
license = "The LATEX Project Public License 1.3c"
}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx
index 3cbe3b141b..0c334eb646 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx
@@ -48,7 +48,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \section{Commands}
@@ -331,11 +331,12 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-checks-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-checks-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to checks, conditionals, debugging and messages}
%</header>
% \end{macrocode}
% \section{Messages}
+%
% \subsection{Messages related to mc-chunks}
% \begin{macro}{mc-nested}
% This message is issue is a mc is opened before the previous has been closed.
@@ -454,6 +455,18 @@
{ closing~structure~#1~tagged~\use:e{\prop_item:cn{g_@@_struct_#1_prop}{S}} }
% \end{macrocode}
% \end{macro}
+%
+% \begin{macro}{struct-Ref-unknown}
+% This message is issued at the end, when the Ref keys are updated.
+% TODO: in debug mode it should report more info about the structure.
+% \begin{macrocode}
+\msg_new:nnn { tag } {struct-Ref-unknown}
+ {
+ #1~has~no~related~structure.\\
+ /Ref~not~updated.
+ }
+% \end{macrocode}
+% \end{macro}
% \begin{macro}{tree-struct-still-open}
% Message issued at the end if there are beside Root other
% open structures on the stack.
@@ -752,7 +765,7 @@
\cs_new_protected:Npn \@@_check_struct_used:n #1 %#1 label
{
\prop_get:cnNT
- {g_@@_struct_\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop}
+ {g_@@_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop}
{P}
\l_@@_tmpa_tl
{
@@ -940,7 +953,7 @@
{
\int_compare:nT
{
- \@@_property_ref:enn
+ \property_ref:enn
{mcid-####1}
{tagabspage}
{-1}
@@ -951,7 +964,7 @@
\seq_gput_right:Ne \l_tmpa_seq
{
Page##1-####1-
- \@@_property_ref:enn
+ \property_ref:enn
{mcid-####1}
{tagmcid}
{-1}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-code.pdf b/macros/latex/contrib/tagpdf/tagpdf-code.pdf
index 76e839d0d5..60af59e1ba 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-code.pdf
+++ b/macros/latex/contrib/tagpdf/tagpdf-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/tagpdf/tagpdf-data.dtx b/macros/latex/contrib/tagpdf/tagpdf-data.dtx
index 6417b44c40..06fe55255d 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-data.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-data.dtx
@@ -47,7 +47,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% This files contains a various data files which are read in
@@ -61,7 +61,7 @@
% latex-lab has also a namespace module, which takes precedence!
% \begin{macrocode}
%<*ns-latex>
-%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-ns-latex.def} {2024-09-11} {0.99e}
%% {latex} {https://www.latex-project.org/ns/dflt/2022}{}
title, Title, pdf2,
part, Title, pdf2,
@@ -93,7 +93,7 @@ text, P, pdf2,
% It is bound to change
% \begin{macrocode}
%<*ns-latex-book>
-%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2024-09-11} {0.99e}
%% {latex-book} {https://www.latex-project.org/ns/book/2022}{}
chapter, H1,pdf2,
section, H2,pdf2,
@@ -107,7 +107,7 @@ subparagraph, H6,pdf2,
% \section{The pdf namespace data}
% \begin{macrocode}
%<*ns-pdf>
-%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2024-09-11} {0.99e}
%% {pdf} {http://iso.org/pdf/ssn}{}
StructTreeRoot,StructTreeRoot,pdf,D,
Document,Document,pdf,D,
@@ -175,7 +175,7 @@ Strong,Span,pdf,I,
% \section{The pdf 2.0 namespace data}
% \begin{macrocode}
%<*ns-pdf2>
-%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2024-09-11} {0.99e}
%% {pdf2} {http://iso.org/pdf2/ssn}{}
StructTreeRoot,StructTreeRoot,pdf2,D,
Document,Document,pdf2,D,
@@ -232,7 +232,7 @@ Strong,Strong,pdf2,I,
% \section{The mathml namespace data}
% \begin{macrocode}
%<*ns-mathml>
-%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2024-09-11} {0.99e}
% {mathml}{http://www.w3.org/1998/Math/MathML}{}
abs,abs,mathml,
and,and,mathml,
@@ -467,7 +467,7 @@ xor,xor,mathml,
% This will perhaps change in future.
% \begin{macrocode}
%<*parent-child>
-%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-parent-child.csv} {2024-09-11} {0.99e}
,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC
Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅
Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅
@@ -522,7 +522,7 @@ MC,both,---,∅,∅,∅,∅,∅,∅,0..n,‡,∅,∅,∅,0..n,0..n,0..n,0..n,0..
% This will perhaps change in future.
% \begin{macrocode}
%<*parent-child-2>
-%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-08-02} {0.99d}
+%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2024-09-11} {0.99e}
,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC
Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅
DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅
diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx
index ff036b5523..41f6b53fba 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \end{documentation}
@@ -55,11 +55,11 @@
% \begin{macrocode}
%<@@=tag>
%<*generic>
-\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-mc-code-generic} {2024-09-11} {0.99e}
{part of tagpdf - code related to marking chunks - generic mode}
%</generic>
%<*debug>
-\ProvidesExplPackage {tagpdf-debug-generic} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-debug-generic} {2024-09-11} {0.99e}
{part of tagpdf - debugging code related to marking chunks - generic mode}
%</debug>
% \end{macrocode}
@@ -573,14 +573,14 @@
% \end{macrocode}
% revert the attribute:
% \begin{macrocode}
- \@@_property_gset:nnnn {tagmcid } { now }
+ \property_gset:nnnn {tagmcid } { now }
{0} { \int_use:N \g_@@_MCID_tmp_bypage_int }
\cs_new_protected:Npn \@@_mc_bdc_mcid:nn #1 #2
{
\int_gincr:N \c@g_@@_MCID_abs_int
\tl_set:Ne \l_@@_mc_ref_abspage_tl
{
- \@@_property_ref:enn %3 args
+ \property_ref:enn %3 args
{
mcid-\int_use:N \c@g_@@_MCID_abs_int
}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx
index 3c2e91605e..bc19d481f8 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{implementation}
% The code is split into three parts: code shared by all engines,
@@ -86,11 +86,11 @@
% \begin{macrocode}
%<@@=tag>
%<*luamode>
-\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-mc-code-lua} {2024-09-11} {0.99e}
{tagpdf - mc code only for the luamode }
%</luamode>
%<*debug>
-\ProvidesExplPackage {tagpdf-debug-lua} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-debug-lua} {2024-09-11} {0.99e}
{part of tagpdf - debugging code related to marking chunks - lua mode}
%</debug>
% \end{macrocode}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx
index 5bfe0658d1..4ac73c0b8f 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \section{Public Commands}
@@ -181,7 +181,7 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-mc-code-shared} {2024-09-11} {0.99e}
{part of tagpdf - code related to marking chunks -
code shared by generic and luamode }
%</header>
@@ -328,7 +328,7 @@
{
\@@_check_if_active_struct:T
{
- \tl_set:Ne \l_@@_tmpa_tl { \@@_property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
+ \tl_set:Ne \l_@@_tmpa_tl { \property_ref:nnn{tagpdf-#1}{tagmcabs}{} }
\tl_if_empty:NTF\l_@@_tmpa_tl
{
\msg_warning:nnn {tag} {mc-label-unknown} {#1}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx
index fb5f1b77c9..f704e49ab6 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \begin{function}
@@ -98,7 +98,7 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-roles-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-roles-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to roles and structure names}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-space.dtx b/macros/latex/contrib/tagpdf/tagpdf-space.dtx
index 5c8e007084..cabc5e2091 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-space.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-space.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \begin{function}{activate/space (setup-key),interwordspace (deprecated)}
@@ -66,7 +66,7 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-space-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-space-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to real space chars}
%</header>
% \end{macrocode}
@@ -78,6 +78,7 @@
% \begin{macro}{activate/spaces (setup-key),interwordspace (deprecated),show-spaces (deprecated)}
% \begin{macrocode}
%<*package>
+\bool_new:N\l_@@_showspaces_bool
\keys_define:nn { @@ / setup }
{
activate/spaces .choice:,
diff --git a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx
index 6da5e48b18..970325dcd4 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \section{Public Commands}
@@ -120,6 +120,18 @@
% the third the value. Currently the only keyword is \texttt{ref} which updates
% the Ref key (an array)
% \end{function}
+%
+% \begin{function}{\tag_struct_gput_ref:nnn}
+% \begin{syntax}
+% \cs{tag_struct_gput_ref:nnn}\Arg{structure number}\Arg{keyword}\Arg{value}
+% \end{syntax}
+% This is an user interface to add a Ref key to an
+% existing structure. The target structure doesn't have to exist yet
+% but can be addressed by label, destname or even num.
+% \meta{keyword} is currently either \texttt{label}, \texttt{dest}
+% or \texttt{num}. The value is then either a label name, the name of a destination
+% or a structure number.
+% \end{function}
%
% \section{Public keys}
% \subsection{Keys for the structure commands}
@@ -285,7 +297,7 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-struct-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-struct-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to storing structure}
%</header>
% \end{macrocode}
@@ -442,12 +454,16 @@
\tl_new:N \l_@@_struct_roletag_NS_tl
% \end{macrocode}
% \end{variable}
-% \begin{variable}{\l_@@_struct_key_label_tl}
-% This will hold the label value.
+% \begin{variable}{\g_@@_struct_label_num_prop}
+% This will hold for every structure label the associated
+% structure number. The prop will allow to
+% fill the /Ref key directly at the first compilation if the ref
+% key is used.
% \begin{macrocode}
-\tl_new:N \l_@@_struct_key_label_tl
+\prop_new_linked:N \g_@@_struct_label_num_prop
% \end{macrocode}
% \end{variable}
+
% \begin{variable}{\l_@@_struct_elem_stash_bool}
% This will keep track of the stash status
% \begin{macrocode}
@@ -696,8 +712,8 @@
/Type \c_space_tl /MCR \c_space_tl
/Pg
\c_space_tl
- \pdf_pageobject_ref:n { \@@_property_ref:enn{mcid-#1}{tagabspage}{1} }
- /MCID \c_space_tl \@@_property_ref:enn{mcid-#1}{tagmcid}{1}
+ \pdf_pageobject_ref:n { \property_ref:enn{mcid-#1}{tagabspage}{1} }
+ /MCID \c_space_tl \property_ref:enn{mcid-#1}{tagmcid}{1}
>>
}
%</package>
@@ -907,34 +923,47 @@
\tl_clear:N #2
\prop_map_inline:cn { g_@@_struct_#1_prop }
{
- \tl_put_right:Ne #2
- {
% \end{macrocode}
% Some keys needs the option to format the value, e.g. add brackets for an
% array, we also need the option to ignore some entries in the properties.
-% \begin{macrocode}
- \cs_if_exist_use:cTF {@@_struct_format_##1:nn}
- {{##1}{##2}}
- {\c_space_tl/##1~##2}
+% \begin{macrocode}
+ \cs_if_exist_use:cTF {@@_struct_format_##1:nnN}
+ {
+ {##1}{##2}#2
}
- }
+ {
+ \tl_put_right:Ne #2 { \c_space_tl/##1~##2 }
+ }
+ }
}
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_struct_format_rolemap:nn,\@@_struct_format_parentrole:nn}
+% \begin{macro}{\@@_struct_format_rolemap:nnN,\@@_struct_format_parentrole:nnN}
% This two entries should not end in the PDF.
% \begin{macrocode}
-\cs_new:Nn\@@_struct_format_rolemap:nn{}
-\cs_new:Nn\@@_struct_format_parentrole:nn{}
+\cs_new:Nn\@@_struct_format_rolemap:nnN{}
+\cs_new:Nn\@@_struct_format_parentrole:nnN{}
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\@@_struct_format_Ref:nn}
-% Ref is an array, we store only the content to be able to extend it
-% so the formatting command adds the brackets:
+% \begin{macro}{\@@_struct_format_Ref:nnN}
+% Ref is an array, we store values as a clist of commands that must
+% be executed here, the formatting has to add also brackets.
+%
% \begin{macrocode}
-\cs_new:Nn\__tag_struct_format_Ref:nn{\c_space_tl/#1~[#2]}
+\cs_new_protected:Nn\@@_struct_format_Ref:nnN
+ {
+ \tl_put_right:Nn #3 { ~/#1~[ } %]
+ \clist_map_inline:nn{ #2 }
+ {
+ ##1 #3
+ }
+ \tl_put_right:Nn #3
+ { %[
+ \c_space_tl]
+ }
+ }
% \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_struct_write_obj:n}
@@ -1028,7 +1057,7 @@
#1 %
}
{
- \pdf_pageobject_ref:n { \@@_property_ref:nnn {@tag@objr@page@#2 }{ tagabspage }{1} }
+ \pdf_pageobject_ref:n { \property_ref:nnn {@tag@objr@page@#2 }{ tagabspage }{1} }
}
% add the parent obj number to the parent tree:
\exp_args:Nne
@@ -1148,7 +1177,14 @@
% \begin{macrocode}
\keys_define:nn { @@ / struct }
{
- label .tl_set:N = \l_@@_struct_key_label_tl,
+ label .code:n =
+ {
+ \prop_gput:Nee\g_@@_struct_label_num_prop
+ {#1}{\int_use:N \c@g_@@_struct_abs_int}
+ \@@_property_record:eV
+ {tagpdfstruct-#1}
+ \c_@@_property_struct_clist
+ },
stash .bool_set:N = \l_@@_struct_elem_stash_bool,
parent .code:n =
{
@@ -1233,19 +1269,76 @@
{ Lang }
{ (#1) }
},
+ }
+% \end{macrocode}
+% Ref is rather special as it values are often
+% known only at the end of the document.
+% It therefore stores it values as
+% clist of commands which are executed at the end of the document,
+% when the structure elements are written.
+% \begin{macro}{\@@_struct_Ref_obj:nN,\@@_struct_Ref_label:nN,
+% \@@_struct_Ref_dest:nN,\@@_struct_Ref_num:nN}
+% this commands are helper commands that are stored as clist
+% in the Ref key of a structure. They are executed when the structure
+% elements are written in \cs{@@_struct_write_obj}. They are used
+% in \cs{@@_struct_format_Ref}. They allow to add a Ref by object reference,
+% label, destname and structure number
+% \begin{macrocode}
+\cs_new_protected:Npn \@@_struct_Ref_obj:nN #1 #2 %#1 a object reference
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl#1
+ }
+ }
+
+\cs_new_protected:Npn \@@_struct_Ref_label:nN #1 #2 %#1 a label
+ {
+ \prop_get:NnNTF \g_@@_struct_label_num_prop {#1} \l_@@_tmpb_tl
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ \l_@@_tmpb_tl }
+ }
+ }
+ {
+ \msg_warning:nnn {tag}{struct-Ref-unknown}{Label~'#1'}
+ }
+ }
+\cs_new_protected:Npn \@@_struct_Ref_dest:nN #1 #2 %#1 a dest name
+ {
+ \prop_get:NnNTF \g_@@_struct_dest_num_prop {#1} \l_@@_tmpb_tl
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ \l_@@_tmpb_tl }
+ }
+ }
+ {
+ \msg_warning:nnn {tag}{struct-Ref-unknown}{Destination~'#1'}
+ }
+ }
+\cs_new_protected:Npn \@@_struct_Ref_num:nN #1 #2 %#1 a structure number
+ {
+ \tl_put_right:Ne#2
+ {
+ \c_space_tl\tag_struct_object_ref:e{ #1 }
+ }
+ }
+
% \end{macrocode}
-% Ref is an array, the brackets are added through the formatting command.
+% \end{macro}
+%
% \begin{macrocode}
+\keys_define:nn { @@ / struct }
+ {
ref .code:n = % ref property
{
- \tl_clear:N\l_@@_tmpa_tl
\clist_map_inline:on {#1}
{
- \tl_put_right:Ne \l_@@_tmpa_tl
- {~\@@_property_ref:en{tagpdfstruct-##1}{tagstructobj} }
+ \tag_struct_gput:nne
+ {\int_use:N \c@g_@@_struct_abs_int}{ref_label}{ ##1 }
}
- \@@_struct_gput_data_ref:ee
- { \int_use:N \c@g_@@_struct_abs_int } {\l_@@_tmpa_tl}
},
E .code:n = % E property
{
@@ -1481,13 +1574,6 @@
\g_@@_struct_tag_tl
\g_@@_struct_tag_NS_tl
\@@_check_structure_has_tag:n { \int_use:N \c@g_@@_struct_abs_int }
- \tl_if_empty:NF
- \l_@@_struct_key_label_tl
- {
- \@@_property_record:eV
- {tagpdfstruct-\l_@@_struct_key_label_tl}
- \c_@@_property_struct_clist
- }
% \end{macrocode}
% The structure number of the parent is either taken from the stack or
% has been set with the parent key.
@@ -1706,16 +1792,16 @@
\@@_check_if_active_struct:T
{
\prop_if_exist:cTF
- { g_@@_struct_\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
+ { g_@@_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{unknown}_prop } %
{
\@@_check_struct_used:n {#1}
%add the label structure as kid to the current structure (can be the root)
\@@_struct_kid_struct_gput_right:ee
{ \g_@@_struct_stack_current_tl }
- { \@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
+ { \property_ref:enn{tagpdfstruct-#1}{tagstruct}{1} }
%add the current structure to the labeled one as parents
\@@_prop_gput:cne
- { g_@@_struct_\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
+ { g_@@_struct_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
{ P }
{
\pdf_object_ref_indexed:nn { @@/struct } { \g_@@_struct_stack_current_tl }
@@ -1724,7 +1810,7 @@
% debug code
% \begin{macrocode}
%<debug> \prop_gput:cne
-%<debug> { g_@@_struct_debug_\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
+%<debug> { g_@@_struct_debug_\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}_prop }
%<debug> { P }
%<debug> {
%<debug> parent~structure:~\g_@@_struct_stack_current_tl\c_space_tl=~
@@ -1736,7 +1822,7 @@
% the global tl-vars:
% \begin{macrocode}
\@@_struct_get_parentrole:eNN
- {\@@_property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
+ {\property_ref:enn{tagpdfstruct-#1}{tagstruct}{1}}
\l_@@_tmpa_tl
\l_@@_tmpb_tl
\@@_check_parent_child:VVVVN
@@ -1853,6 +1939,7 @@
\pdf_object_ref_indexed:nn {@@/struct}{ #1 }
}
\cs_generate_variant:Nn \tag_struct_object_ref:n {e}
+%</package>
% \end{macrocode}
%
% \end{macro}
@@ -1864,10 +1951,18 @@
% adjusted to the key in question.
% The first argument is the number of the structure,
% the second a keyword referring to a function,
-% the third the value. Currently the only keyword is \texttt{ref} which updates
-% the Ref key (an array)
-% \begin{macrocode}
-\cs_new_protected:Npn \tag_struct_gput:nnn #1 #2 #3
+% the third the value. Currently the existing keywords are all related
+% to the \texttt{Ref} key (an array).
+% The keyword \texttt{ref} takes as value an explicit object reference to
+% a structure. The keyword \texttt{ref_label} expects as value a label name (from
+% a label set in a \cs{tagstructbegin} command). The keyword \texttt{ref_dest}
+% expects a destination name set with \cs{MakeLinkTarget}. It then will refer to
+% the structure in which this \cs{MakeLinkTarget} was used. At last
+% the keyword \texttt{ref_num} expects a structure number.
+% \begin{macrocode}
+%<base>\cs_new_protected:Npn \tag_struct_gput:nnn #1 #2 #3{}
+%<*package>
+\cs_set_protected:Npn \tag_struct_gput:nnn #1 #2 #3
{
\cs_if_exist_use:cF {@@_struct_gput_data_#2:nn}
{ %warning??
@@ -1880,22 +1975,47 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_struct_gput_data_ref:nn}
+% \begin{macro}{\@@_struct_gput_data_ref_aux:nnn}
% \begin{macrocode}
%<*package>
-\cs_new_protected:Npn \@@_struct_gput_data_ref:nn #1 #2
- % #1 receiving struct num, #2 list of object ref
+\cs_new_protected:Npn \@@_struct_gput_data_ref_aux:nnn #1 #2 #3
+ % #1 receiving struct num, #2 key word #3 value
{
- \prop_get:cnN
- { g_@@_struct_#1_prop }
- {Ref}
- \l_@@_get_tmpc_tl
- \@@_struct_prop_gput:nne
- { #1 }
- { Ref }
- { \quark_if_no_value:NF\l_@@_get_tmpc_tl { \l_@@_get_tmpc_tl\c_space_tl }#2 }
+ \prop_get:cnNTF
+ { g_@@_struct_#1_prop }
+ {Ref}
+ \l_@@_get_tmpc_tl
+ {
+ \tl_put_right:No \l_@@_get_tmpc_tl
+ {\cs:w @@_struct_Ref_#2:nN \cs_end: {#3},}
+ }
+ {
+ \tl_set:No \l_@@_get_tmpc_tl
+ {\cs:w @@_struct_Ref_#2:nN \cs_end: {#3},}
+ }
+ \@@_struct_prop_gput:nno
+ { #1 }
+ { Ref }
+ { \l_@@_get_tmpc_tl }
}
-\cs_generate_variant:Nn \@@_struct_gput_data_ref:nn {ee}
+\cs_new_protected:Npn \@@_struct_gput_data_ref:nn #1 #2
+ {
+ \@@_struct_gput_data_ref_aux:nnn {#1}{obj}{#2}
+ }
+\cs_new_protected:Npn \@@_struct_gput_data_ref_label:nn #1 #2
+ {
+ \@@_struct_gput_data_ref_aux:nnn {#1}{label}{#2}
+ }
+\cs_new_protected:Npn \@@_struct_gput_data_ref_dest:nn #1 #2
+ {
+ \@@_struct_gput_data_ref_aux:nnn {#1}{dest}{#2}
+ }
+\cs_new_protected:Npn \@@_struct_gput_data_ref_num:nn #1 #2
+ {
+ \@@_struct_gput_data_ref_aux:nnn {#1}{num}{#2}
+ }
+
+\cs_generate_variant:Nn \@@_struct_gput_data_ref:nn {ee,no}
% \end{macrocode}
% \end{macro}
% \begin{macro}
@@ -1937,7 +2057,7 @@
% \section{Attributes and attribute classes}
% \begin{macrocode}
%<*header>
-\ProvidesExplPackage {tagpdf-attr-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-attr-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to attributes and attribute classes}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx
index f7ae6de996..c6c52b196e 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx
@@ -47,13 +47,13 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{implementation}
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-tree-code} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-tree-code} {2024-09-11} {0.99e}
{part of tagpdf - code related to writing trees and dictionaries to the pdf}
%</header>
% \end{macrocode}
@@ -118,7 +118,7 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{viewer/startpage (setup-key)}
+% \begin{macro}{viewer/startstructure (setup-key)}
% We also need an option to setup the start structure. So we setup a key
% which sets the variable to the current structure. This still requires
% hyperref to do most of the job, this should perhaps be changed.
@@ -367,11 +367,11 @@
{
%mcid####1
\int_compare:nT
- {\@@_property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
+ {\property_ref:enn{mcid-####1}{tagabspage}{-1}=##1} %mcid is on current page
{% yes
\prop_put:Nee
\l_@@_tmpa_prop
- {\@@_property_ref:enn{mcid-####1}{tagmcid}{-1}}
+ {\property_ref:enn{mcid-####1}{tagmcid}{-1}}
{\prop_item:Nn \g_@@_mc_parenttree_prop {####1}}
}
}
diff --git a/macros/latex/contrib/tagpdf/tagpdf-user.dtx b/macros/latex/contrib/tagpdf/tagpdf-user.dtx
index a4014b62e3..d67210fc73 100644
--- a/macros/latex/contrib/tagpdf/tagpdf-user.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf-user.dtx
@@ -46,7 +46,7 @@
% }^^A
% }
%
-% \date{Version 0.99d, released 2024-08-02}
+% \date{Version 0.99e, released 2024-09-11}
% \maketitle
% \begin{documentation}
% \section{Setup commands}
@@ -309,7 +309,7 @@
% \begin{macrocode}
%<@@=tag>
%<*header>
-\ProvidesExplPackage {tagpdf-user} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-user} {2024-09-11} {0.99e}
{tagpdf - user commands}
%</header>
% \end{macrocode}
diff --git a/macros/latex/contrib/tagpdf/tagpdf.dtx b/macros/latex/contrib/tagpdf/tagpdf.dtx
index b1d008a6e6..11c002c973 100644
--- a/macros/latex/contrib/tagpdf/tagpdf.dtx
+++ b/macros/latex/contrib/tagpdf/tagpdf.dtx
@@ -93,8 +93,8 @@
% \begin{macrocode}
%<@@=tag>
%<*package>
-\ProvidesExplPackage {tagpdf} {2024-08-02} {0.99d}
- { A package to experiment with pdf tagging }
+\ProvidesExplPackage {tagpdf} {2024-09-11} {0.99e}
+ { LaTeX kernel code for PDF tagging }
\bool_if:nF
{
@@ -119,7 +119,7 @@
% \end{macrocode}
%<*debug>
% \begin{macrocode}
-\ProvidesExplPackage {tagpdf-debug} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-debug} {2024-09-11} {0.99e}
{ debug code for tagpdf }
\@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput}
% \end{macrocode}
@@ -142,7 +142,7 @@
% we define a base package with dummy functions
% \begin{macrocode}
%<*base>
-\ProvidesExplPackage {tagpdf-base} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdf-base} {2024-09-11} {0.99e}
{part of tagpdf - provide base, no-op versions of the user commands }
%</base>
% \end{macrocode}
@@ -191,34 +191,31 @@
}
%</base>
% \end{macrocode}
-% \subsection{Indexed objects}
-% 2024-04-11: Temporary code! Can be removed after the next expl3 release!
+% \subsection{Patches related to Ref improvement}
+% 2024-09-09: Temporary code. Can be removed when the latex-lab-footnote
+% and latex-lab-toc code have been adapted to the better Ref handling.
% \begin{macrocode}
-\cs_if_free:NT \pdf_object_new_indexed:nn
- {
- \cs_generate_variant:Nn \pdf_object_new:n {e}
- \cs_generate_variant:Nn \pdf_object_write:nnn {enn}
- \cs_new_protected:Npn \pdf_object_new_indexed:nn #1 #2
- {
- \pdf_object_new:e {#1/\int_eval:n{#2}}
- }
- \cs_new_protected:Npn \pdf_object_write_indexed:nnnn #1 #2 #3 #4
- {
- \pdf_object_write:enn {#1/\int_eval:n{#2}}{#3}{#4}
- }
- \cs_generate_variant:Nn \pdf_object_write_indexed:nnnn {nnne}
- \cs_new:Npn\pdf_object_ref_indexed:nn #1 #2
- {
- \pdf_object_ref:e {#1/\int_eval:n{#2}}
- }
- \cs_new:Npn \__kernel_pdf_object_id_indexed:nn #1 #2
- {
- \int_use:c
- { c__pdf_object_ #1/\int_eval:n{#2} _int }
- }
- }
-
+%<*package>
+\AddToHook{package/latex-lab-testphase-new-or-2/after}
+ {
+ \cs_set_protected:Npn \__fnote_gput_ref:nn #1 #2 %#1 the structure number receiving the ref #2
+ {
+ \tag_struct_gput:nnn {#1}{ref_num}{#2}
+ }
+ }
+\AddToHook{package/latex-lab-testphase-toc/after}
+ {
+ \cs_set_protected:Npn \g_@@_struct_ref_by_dest:
+ {
+ \prop_map_inline:Nn\g_@@_struct_ref_by_dest_prop
+ {
+ \tag_struct_gput:nnn {##1}{ref_dest}{##2}
+ }
+ }
+ }
+%</package>
% \end{macrocode}
+%
% \subsection{a LastPage label}
% See also issue \#2 in Accessible-xref
% \begin{macro}{\@@_lastpagelabel:}
@@ -251,6 +248,7 @@
% {
% \l_@@_tmpa_tl,
% \l_@@_tmpb_tl,
+% \l_@@_Ref_tmpa_tl,
% \l_@@_get_tmpc_tl,
% \l_@@_get_parent_tmpa_tl
% \l_@@_get_parent_tmpb_tl
@@ -267,6 +265,7 @@
% \begin{macrocode}
\tl_new:N \l_@@_tmpa_tl
\tl_new:N \l_@@_tmpb_tl
+\tl_new:N \l_@@_Ref_tmpa_tl
\tl_new:N \l_@@_get_tmpc_tl
\tl_new:N \l_@@_get_parent_tmpa_tl
\tl_new:N \l_@@_get_parent_tmpb_tl
@@ -382,24 +381,10 @@
% \end{macrocode}
%
% \section{Label and Reference commands}
-% To ease transition to properties we setup internal definition. They can be replaced
-% by the property definitions once that is released.
-% %** do it!
-% \begin{macro}{\@@_property_new:nnnn,\@@_property_gset:nnnn,\@@_property_ref:nnn}
-% At first a command to define new properties
-% \begin{macrocode}
- \cs_new_eq:NN \@@_property_new:nnnn \property_new:nnnn
-% \end{macrocode}
-% For the non-shipout code we need also the option to reset property
-% \begin{macrocode}
- \cs_new_eq:NN \@@_property_gset:nnnn \property_gset:nnnn
-% \end{macrocode}
-% The command to reference while giving a local default.
-% \begin{macrocode}
- \cs_new_eq:NN \@@_property_ref:nnn \property_ref:nnn
- \cs_new_eq:NN \@@_property_ref:nn \property_ref:nn
-% \end{macrocode}
-% The command to record
+% The code uses mostly the kernel properties but need a few local variants.
+% \begin{macro}{\@@_property_record:nn}
+% The command to record a property while preserving the spaces similar to the standard
+% \cs{label}.
% \begin{macrocode}
\cs_new_protected:Npn \@@_property_record:nn #1#2
{
@@ -411,8 +396,8 @@
% \end{macrocode}
% And a few variants
% \begin{macrocode}
-\cs_generate_variant:Nn \@@_property_ref:nnn {enn}
-\cs_generate_variant:Nn \@@_property_ref:nn {en}
+\cs_generate_variant:Nn \property_ref:nnn {enn}
+\cs_generate_variant:Nn \property_ref:nn {en}
\cs_generate_variant:Nn \@@_property_record:nn {en,eV}
% \end{macrocode}
% \end{macro}
@@ -423,7 +408,7 @@
% \begin{macrocode}
\cs_new:Npn \@@_property_ref_lastpage:nn #1 #2
{
- \@@_property_ref:nnn {@tag@LastPage}{#1}{#2}
+ \property_ref:nnn {@tag@LastPage}{#1}{#2}
}
% \end{macrocode}
%\end{macro}
@@ -440,21 +425,21 @@
% With mc-chunks we store the absolute page number |tagabspage|,
% the absolute id |tagmcabc|, and the id on the page |tagmcid|.
% \begin{macrocode}
-\@@_property_new:nnnn
+\property_new:nnnn
{ tagstruct } { now }
- {0} { \int_use:N \c@g_@@_struct_abs_int }
-\@@_property_new:nnnn { tagstructobj } { now } {}
+ {1} { \int_use:N \c@g_@@_struct_abs_int }
+\property_new:nnnn { tagstructobj } { now } {}
{
\pdf_object_ref_indexed:nn { @@/struct } { \c@g_@@_struct_abs_int }
}
-\@@_property_new:nnnn
+\property_new:nnnn
{ tagabspage } { shipout }
{0} { \int_use:N \g_shipout_readonly_int }
-\@@_property_new:nnnn { tagmcabs } { now }
+\property_new:nnnn { tagmcabs } { now }
{0} { \int_use:N \c@g_@@_MCID_abs_int }
\flag_new:n { @@/mcid }
-\@@_property_new:nnnn {tagmcid } { shipout }
+\property_new:nnnn {tagmcid } { shipout }
{0} { \flag_height:n { @@/mcid } }
% \end{macrocode}
@@ -550,7 +535,8 @@
% \begin{macrocode}
\cs_set_protected:Npn \tag_stop:n #1
{
-%<debug> \msg_note:nnee {tag / debug }{tag-stop}{ \int_use:N \l_@@_tag_stop_int }{#1}
+%<debug> \msg_note:nnee {tag / debug }{tag-stop}
+%<debug> { \int_use:N \l_@@_tag_stop_int }{\exp_not:n{#1}}
\int_incr:N \l_@@_tag_stop_int
\bool_set_false:N \l_@@_active_struct_bool
\bool_set_false:N \l_@@_active_mc_bool
@@ -567,7 +553,8 @@
\bool_set_true:N \l_@@_active_socket_bool
\@@_start_para_ints:
}
-%<debug> \msg_note:nnee {tag / debug }{tag-start}{ \int_use:N \l_@@_tag_stop_int }{#1}
+%<debug> \msg_note:nnee {tag / debug }{tag-start}
+%<debug> { \int_use:N \l_@@_tag_stop_int }{\exp_not:n{#1}}
}
%</package|debug>
%<*base>
diff --git a/macros/latex/contrib/tagpdf/tagpdf.pdf b/macros/latex/contrib/tagpdf/tagpdf.pdf
index f7c6ea02a3..9a4ea62707 100644
--- a/macros/latex/contrib/tagpdf/tagpdf.pdf
+++ b/macros/latex/contrib/tagpdf/tagpdf.pdf
Binary files differ
diff --git a/macros/latex/contrib/tagpdf/tagpdf.tex b/macros/latex/contrib/tagpdf/tagpdf.tex
index 10d36d09a0..bffecaf942 100644
--- a/macros/latex/contrib/tagpdf/tagpdf.tex
+++ b/macros/latex/contrib/tagpdf/tagpdf.tex
@@ -16,8 +16,8 @@
}
\DebugBlocksOff
\makeatletter
-\def\UlrikeFischer@package@version{0.99d}
-\def\UlrikeFischer@package@date{2024-08-02}
+\def\UlrikeFischer@package@version{0.99e}
+\def\UlrikeFischer@package@date{2024-09-11}
\makeatother
\documentclass[bibliography=totoc,a4paper]{article}
@@ -1031,7 +1031,7 @@ The key-val list understands the following keys:
marked but not stored in the kid-key of the current structure.
\item[\PrintKeyName{label}] This key sets a label by which you can call
- the marked content later in another structure (if it has been stashed
+ the marked content \emph{later} in another structure (if it has been stashed
with the previous key). Internally the label name will start with
\texttt{tagpdf-}.
@@ -1175,10 +1175,10 @@ This (expandable) command returns the values of some variables. Currently, the w
\item \verb+struct_counter+: This returns a number and works also if
only \pkg{tagpdf-base} has been loaded. It gives back the state of
- the absolute structure counter and so number of the last structure
+ the absolute structure counter and so the number of the last structure
that has been created. This can be used to detect if in a piece of
code there are structure commands. Be aware that this is a \LaTeX{}
- counter and so reset in some places.
+ counter and so is reset in some places.
\item \verb+mc_counter+: This returns a number and works also if only
\pkg{tagpdf-base} has been loaded. It gives back the state of the
@@ -1699,20 +1699,20 @@ The key-val list understands the following keys:
content and structures.
\item[\PrintKeyName{label}] This key sets a label by which one can
- refer to the structure. It is e.g. used by
- \cs{tag\_struct\_use:n} (where a real label is actually not needed
- as you can only use structures already defined), and by the |ref|
- key (which can refer to future structures). Internally the label
- name will start with \texttt{tagpdfstruct-} and it stores the two
+ refer to the structure. Currently the key writes a property whose
+ name starts with \texttt{tagpdfstruct-} to the aux-file with the two
attributes \texttt{tagstruct} (the structure number) and
- \texttt{tagstructobj} (the object reference).
+ \texttt{tagstructobj} (the object reference) but also stores the
+ name and the structure number into a prop for use in the current compilation.
+ The label is e.g. used by \cs{tag\_struct\_use:n} and by the |ref|
+ key (which can refer to future structures).
\item[\PrintKeyName{parent}] With the parent key one can choose another
parent. The value is a structure number which must refer to an
already existing, previously created structure. Such a structure
number can have been stored previously with \cs{tag\_get:n}, but one
can also use a label on the parent structure and then use
- \cs{ref\_value:nn}\verb+{tagpdfstruct-label}{tagstruct}+ to retrieve
+ \cs{property\_ref:nn}\verb+{tagpdfstruct-label}{tagstruct}+ to retrieve
it.
\item[\PrintKeyName{alt}] This key inserts an \texttt{/Alt} value in the
@@ -1852,7 +1852,9 @@ The key-val list understands the following keys:
structure. The value should be a comma separated list of
structure labels set with the |label| key.
e.g. |ref={label1,label2}|. It can be used more than once in the
- key/value argument and combines the references.
+ key/value argument and combines the references. See below
+ in section~\ref{sec:Refkey} for an extended discussion about the |/Ref|
+ array.
\item[\PrintKeyName{E}] This key sets the |/E| key, the expanded
form of an abbreviation or an acronym (I couldn't think of a
@@ -1877,6 +1879,25 @@ These commands insert a structure previously stashed away as kid into the
currently active structure. A structure should be used only once, if the
structure already has a parent you will get a warning.
+\subsubsection{Updating the \texttt{Ref} key in structures}\label{sec:Refkey}
+
+Structures that cross reference other structures, e.g. citation commands, table of
+content entries, footnote require often a \texttt{Ref} key. \texttt{Ref}
+can be added with the |ref| key of \cs{tagstructbegin} described above
+but as it is a task that often has to be done automatically in code
+there exist also a command that allows to extend the \texttt{Ref} key (and perhaps in future also other keys) later.
+This command allows to add the value, the target structure of the \texttt{Ref} key,
+with four methods: directly as object reference, through a label name set with the |label| key, through a destination name if a \cs{MakeLinkTarget} has been used in
+the target structure---this also works if hyperref has not been loaded---and through
+the structure number, which has been stored e.g. in a label.
+
+\begin{docCommands}
+ {
+ {doc name=tag_struct_gput:nnn,doc parameter=\marg{structurenumber}\marg{keyword}\marg{value}},
+ }\end{docCommands}
+
+The allowed \meta{keywords} are \texttt{ref}, \texttt{ref\_label} \texttt{ref\_dest}
+and \texttt{ref\_num}.
\subsubsection{Root structure}
diff --git a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty
index 6ae5840b11..5619d59571 100644
--- a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty
+++ b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty
@@ -1,5 +1,5 @@
%\RequirePackage[enable-debug]{expl3}[2018/06/14]
-\ProvidesExplPackage {tagpdfdocu-patches} {2024-08-02} {0.99d}
+\ProvidesExplPackage {tagpdfdocu-patches} {2024-09-11} {0.99e}
{patches/commands for the tagpdf documentation}
\RequirePackage{etoolbox,xpatch}