WCAG contrast check (PDF)
Text contrast measured from the file where it’s truly measurable — and honest where it isn’t.
What it checks
- Text/background contrast ratios computed from the document’s color operators where the pairing is statically determinable
- Mixed-measurability honesty: a document where some runs are measurable and others are not reports the criterion accordingly — a colored header on an unmeasurable body never produces a blanket "Supports"
- Conservative thresholds by design — where a large-text easing is not applied, a pass is a stronger claim, never a weaker one
- Feeds the per-criterion accessibility report (Supports / Does not support / Not evaluated) alongside the PDF/UA and WCAG structure checks
FAQ
What contrast ratio does WCAG require?
AA requires 4.5:1 for normal text (3:1 for large text; 3:1 for graphical objects under 1.4.11). Preflight applies the conservative end, so its passes hold up under review.
Why do other checkers pass documents Preflight won’t score?
Because "not evaluated" is work to implement and uncomfortable to show. It is also the only honest answer for text over images or indeterminate rendering — and it is exactly what an auditor will ask about.
What happens to my documents?
Uploads are tenant-scoped, encrypted at rest, and anonymous uploads auto-purge within 24 hours. Result pages are token-gated and never indexed.