Skip to content

Commit 9c04fe8

Browse files
test results and other edits
1 parent 05ccea5 commit 9c04fe8

1 file changed

Lines changed: 40 additions & 4 deletions

File tree

  • docs/blog/posts/2026-02-xx-pdf-accessibility-and-standards

docs/blog/posts/2026-02-xx-pdf-accessibility-and-standards/index.qmd

Lines changed: 40 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ The UA-1 standard supported by Typst, and the UA-2 standard supported by LaTeX,
1111
* Spatial coordinates for highlighting and assistive navigation
1212
* Required metadata such as title and language
1313

14+
## Enabling a PDF Standard for Accessibility
15+
1416
In Quarto 1.9, specify a PDF standard for your document or project with `pdf-standard`
1517

1618
::: panel-tabset
@@ -31,12 +33,46 @@ format:
3133
```
3234
:::
3335
34-
`pdf-standard` takes a single standard name or list of standard names.[PDF version is used if provided in the list, but otherwise inferred from the standard]{.aside}
36+
`pdf-standard` takes a single standard name or list of standard names.PDF version is used if provided in the list, but otherwise inferred from the standard.
3537

3638
If you specify a PDF standard, Quarto first instructs LaTeX or Typst to use the standard when producing the PDF, and then validates the output PDF against the standard using veraPDF, an open-source PDF validation tool.
3739

38-
Typst validates many accessibility rules during rendering, and can fail earlier.
40+
## Markdown is naturally good for Accessibility
41+
42+
Quarto doesn't guarantee PDF accessibility compliance, but its Markdown-based workflow handles many requirements automatically:
43+
44+
* Document metadata (title, author, date, language) flows into the PDF's built-in metadata fields.
45+
* The semantic structure of Markdown satisfies PDF tagging requirements. For Typst this is always enabled; for LaTeX it is enabled when you specify a standard that requires it.
46+
* Alt text for images is carried through to the PDF for screen readers.
47+
48+
See the [LaTeX](https://prerelease.quarto.org/docs/output-formats/pdf-basics.html#accessibility-requirements) and [Typst](https://prerelease.quarto.org/docs/output-formats/typst.html#accessibility-requirements) documentation for details.
49+
50+
## What to expect
51+
52+
We ran our test suite, with 188 LaTeX examples and 317 Typst examples, in order to see:
53+
54+
* Where Quarto produces PDFs that do not pass UA-1 or UA-2.
55+
* Where users will need to change their documents to meet accessibility standards
56+
57+
### Both formats
58+
59+
Your document needs a title.
60+
61+
Your document needs alt text and/or a caption for every image.
62+
63+
### LaTeX
64+
65+
Margin notes are the biggest structural blocker. The `sidenotes` and `marginnote` LaTeX packages [do not cooperate with PDF Tagging](https://github.com/quarto-dev/quarto-cli/issues/14103).
66+
67+
There are smaller upstream issues in Pandoc, LaTeX, and LaTeX packages, [documented here](https://github.com/quarto-dev/quarto-cli/pull/14097#issuecomment-3947653207).
68+
69+
We expect that as awareness of accessibility and UA-2 spreads, these problems will get fixed upstream. Please search for [discussions](https://github.com/orgs/quarto-dev/discussions) and file a new one if essential features of PDF output in Quarto fail UA-2.
70+
71+
### Typst
72+
73+
In our tests, Typst catches every UA-1 violation, and fails to generate the PDF. veraPDF did not detect any violation that Typst did not.
74+
75+
Typst also seems to do a very good job of generating UA-1 compliant output by default - almost all errors were titles and alt text.
3976

40-
It's too soon to say, but we don't expect Quarto users to see many errors when enabling a PDF standard. [need to test this further]{.content-hidden}
77+
However, we did discover that Typst Books are not yet compliant. There is [structural problem with the Typst orange-book package](https://github.com/flavio20002/typst-orange-template/issues/38) and we'll work with the maintainers to correct it.
4178

42-
The metadata and Markdown structure of your Quarto document satisfy the main requirement, semantic tagging. Quarto Alt text propagation, recently implemented in Pandoc and Quarto, with a fallback to the caption

0 commit comments

Comments
 (0)