Skip to content

Commit

Permalink
Merge branch 'phoneme' of https://github.com/latex3/tagpdf into phoneme
Browse files Browse the repository at this point in the history
  • Loading branch information
u-fischer committed Feb 17, 2025
2 parents c1e75d5 + ce4ee02 commit f45d61a
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 23 deletions.
5 changes: 4 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,12 @@ this project uses date-based 'snapshot' version identifiers.

## [Unreleased]

### Added
### Changed
- remove genericmode option for luatex.
- removed fallback code for delayedshipout
- removed code related to now unused kernel hooks
### Added

- phoneme key for `\tagstructbegin`.

## [2025-01-10]
Expand Down
35 changes: 13 additions & 22 deletions doc/tagpdf.tex
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ \subsection{Tagging and accessibility}

\subsection{Engines and modes}

Theoretically, the package works with all engines, but the xelatex and the
Theoretically, the package works with all engines, but the xelatex and the
latex-dvips-route are basically untested and they also don't support real
space glyphs so I don't recommend them. lualatex is the most powerful and
safe modus and should be used for new documents, it is slower than pdflatex
Expand All @@ -204,7 +204,8 @@ \subsection{Engines and modes}

The package has two modes: the \emph{generic mode} which should work in
theory with every engine and the \emph{lua mode} which works only with
lualatex and (since version 0.98k) with dvilualatex.
lualatex and (since version 0.98k) with dvilualatex. Since version 0.99n,
the lua mode is forced if luatex is detected, otherwise generic mode is used.

I implemented the generic mode first. Mostly because my \TeX\ skills are much
better than my lua skills and I wanted to get the \TeX\ side right before
Expand Down Expand Up @@ -238,16 +239,13 @@ \subsection{References and target PDF version}
it knows more structure types, it allows to add associated files to
structures---these are small, embedded files that can, for example, contain
the mathML or source code of an equation---, it knows structure destinations,
which allows to link to a structure.
which allows to link to a structure. It knows the MathML namespace.
\LaTeX{} therefore targets \PDF{} 2.0, tagpdf has support for
associated files, for name spaces and other \PDF{} 2.0 features.

\PDF{}~2.0 features are currently (end of 2023) not well supported by
\PDF~consumer. No PDF viewer (including Acrobat) for example can handle name
spaces and associated files. The PDF Accessibility Checker (PAC) even crashes
if one tries to load a \PDF{} 2.0 file, and pdftk will create a \PDF{}~1.0
from it.

Nevertheless \LaTeX{} targets \PDF{} 2.0, tagpdf has added support for
associated files, for name spaces and other \PDF{} 2.0 features. We recommend
\PDF{}~2.0 features are currently (begin of 2025) still not well supported by
\PDF~consumer, but some progress has been made. Foxit is now handling mathml associated files and PDF Accessibility Checker (PAC) no longer crashes
if one tries to load a \PDF{} 2.0 file. We recommend
to use \PDF{} 2.0 if possible and then to complain to the PDF{} consumer if
something doesn't work.

Expand All @@ -261,7 +259,6 @@ \subsection{References and target PDF version}

\subsection{Validation}


\PDF{}'s created with the commands of this package must be validated:

\begin{itemize}
Expand Down Expand Up @@ -291,6 +288,8 @@ \subsection{Validation}
to edit the structure. For PDF~2.0 files there is also a checker based on the
Arlington model from veraPDF.

A tool developed by the \LaTeX{} team allows to extract the structure as XML and to validate it against a schema. This can be tested as \url{https://texlive.net/showtags}.

Practical validation is naturally the more complicated part.
It needs screen reader, users which actually knows how to handle them,
can test documents and can report where a \PDF{} has real accessibility problems.
Expand Down Expand Up @@ -444,17 +443,9 @@ \subsection{Modes and package options}
The package has two different modes: The \textbf{generic mode} works
(in theory, currently only fully tested with pdflatex) probably with
all engines, the \textbf{lua mode} only with lualatex. The differences
between both modes will be described later. The mode can be set with
package options:

\DescribeKey{luamode}

This is the default mode. It will use the generic mode if the document
is processed with pdflatex and the lua mode with lualatex.

\DescribeKey{genericmode}
between both modes will be described later.

This will force the generic mode for all engines.
Starting with version 0.99n the mode is set automatically (lua mode for luatex, generic mode otherwise). The package options do nothing anymore and will be remove in future versions.


\subsection{Setup and activation}\label{ssec:setup}
Expand Down

0 comments on commit f45d61a

Please sign in to comment.