20
0

Give frame titles as \frametitle so they are tagged as headings

Only \frametitle{...} produces a tagged heading in ltx-talk. Giving the
title as the argument to \begin{frame}{...} silently yields a frame with
no heading element at all, which is why the deck had sections but nothing
per slide. Use the command form throughout.

The resulting headings sit at ltx-talk's default H4, nested under the H1
that a section produces. That level can be remapped with \tagpdfsetup if
assistive software turns out to want frame titles higher up.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-13 19:15:05 -07:00
parent 109d9dc5c2
commit 79bd697440
2 changed files with 19 additions and 6 deletions

View File

@@ -98,10 +98,21 @@ Upstream: https://github.com/mrc-pop/trantor
=== Known gaps ================= === Known gaps =================
================================ ================================
Frame titles are not headings. ltx-talk's role map declares Frame titles must be given as \frametitle{...} inside the frame, not as
frametitle -> H4, but no such elements are emitted, so the tag tree has the argument to \begin{frame}{...}. Only the command form is tagged; the
sections but no per-slide headings. The manual calls the relationship argument form produces a frame with no heading at all, silently. This
between frame titles and sectioning "still very much open". looks like an upstream oversight rather than a decision, so it may change.
ltx-talk tags frame titles at H4, deliberately well below sections and
subsections, and the manual describes the relationship between frame
titles and sectioning as "still very much open". That default is left
alone here. It can be changed with
\tagpdfsetup{role/new-tag = frametitle/H1}
but H1 would put frame titles at the same level as the section headings
that contain them, so it is worth deciding what an accessibility checker
should see before reaching for it.
Overlay tagging has an open upstream bug, issue #33, where \only<1> and Overlay tagging has an open upstream bug, issue #33, where \only<1> and
\only<2> produce output that fails validation. The \pause and <+-> forms \only<2> produce output that fails validation. The \pause and <+-> forms

View File

@@ -53,7 +53,8 @@
\section{Introduction} \section{Introduction}
\sectionpage \sectionpage
\begin{frame}{A sample slide} \begin{frame}
\frametitle{A sample slide}
A displayed formula: A displayed formula:
\[ \int_{-\infty}^\infty e^{-x^2} \, dx = \sqrt{\pi} \] \[ \int_{-\infty}^\infty e^{-x^2} \, dx = \sqrt{\pi} \]
@@ -71,7 +72,8 @@
\note<3->{Once the whole list is up, tie it back to the opening claim.} \note<3->{Once the whole list is up, tie it back to the opening claim.}
\end{frame} \end{frame}
\begin{frame}{Short frame title} \begin{frame}
\frametitle{Short frame title}
\e{A first} paragraph with \texttt{monospace text}. \e{A first} paragraph with \texttt{monospace text}.
And then \e{a second} paragraph. And then \e{a second} paragraph.