Skip to content

README: the linearization checker - #38

Merged
tannevaled merged 1 commit into
mainfrom
linearization-in-the-readme
Oct 31, 2026
Merged

tannevaled merged 1 commit into
mainfrom
linearization-in-the-readme

Conversation

@tannevaled

Copy link
Copy Markdown
Contributor

go-pdfkit/reader v0.10.0 reads and checks a file's linearization (ISO 32000-1 Annex F).

The section says what is checked, what is not — the hint tables of F.4, which a file can fail while passing everything here — and that there is no linearizing writer yet, because the checker came first on purpose: a writer cannot be trusted without one.

It also says where the positives come from. They are qpdf's output rather than fixtures written to agree with my own reading of Annex F, and on five real library scans judged by qpdf --check alongside us the two agree 5 to 0, including a 68-page 13 MB document.

🤖 Generated with Claude Code

go-pdfkit/reader v0.10.0 reads and checks a file's linearization (ISO 32000-1
Annex F). The section says what is checked, what is NOT -- the hint tables of
F.4, which a file can fail while passing everything here -- and that there is
no linearizing writer yet, because the checker came first on purpose: a writer
cannot be trusted without one.

It also says where the positives come from. They are qpdf's output rather than
fixtures written to agree with my reading of Annex F, and on five real library
scans judged by `qpdf --check` alongside us the two agree 5 to 0.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@tannevaled
tannevaled merged commit 3c5b84e into main Oct 31, 2026
9 checks passed
@tannevaled
tannevaled deleted the linearization-in-the-readme branch October 31, 2026 22:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant