Multi-Page Sample PDFs with Known Page Counts
Six files with page counts you can trust: 1, 10, 100 and 500 pages (each page shows "Page N of M" in its header), a 12-page report with headings and body copy, and a 4-page file where every page has a different rotation. When you're testing anything that splits, counts, or reorders pages, the file itself shouldn't be a variable.
Why "Page N of M" on every page matters
After you split a 100-page file into 10-page chunks, how do you know chunk 3 actually starts at page 21? With most sample files you can't — the pages all look the same. Here every page states its own position, so the output of any split, extract, reorder, or delete operation is verifiable by eye, page by page. The page text is real, extractable text (not an image), so text extraction can confirm order programmatically too.
What to test with each file
- sample-10-pages.pdf — the everyday case: split in half, extract
2,5-7, delete a page, 2-up it. Small enough to iterate fast. - sample-100-pages.pdf — pagination UIs, thumbnail sidebars, "jump to page" fields, and anything that renders lazily.
- sample-500-pages.pdf — the stress case: memory behavior of browser-based tools, scroll performance in a viewer, progress reporting on long operations. Still under 1 MB, so slowness you observe is page count, not file size.
- sample-1-page.pdf — the degenerate case. Off-by-one bugs love single-page documents: "split" should refuse or no-op gracefully, "page range 1-1" should work.
- mixed-rotation.pdf — every page carries a different
/Rotatevalue. Viewers, thumbnailers, and rotation tools disagree about this file more than any other in the collection; that's the point. - multi-page-report.pdf — looks like a real document, with section headings. Best for demo screenshots and watermark / page-number placement checks against non-trivial content.
Edge cases these files will surface
- Zero-indexing confusion — ask a tool for "pages 1-10" of the 100-page file and check whether page 1 or page 2 arrives first in the output.
- Range parsing —
5-7,2,10-10against the 10-page file has a known right answer; compare what you get. - Rotation normalization — after "rotate all to portrait" on mixed-rotation.pdf, all four page numbers should read upright. If page 3 is upside down, the tool double-rotated.
- Lazy rendering — scroll to page 400 of the 500-page file; if the viewer renders everything up front you'll feel it.
FAQ
Is the text on the pages real text or an image?
Real text, embedded standard fonts. Extraction tools recover it verbatim. If you need the opposite — pages that are pictures of text — that's the scanned sample.
Why is the 500-page file smaller than 1 MB?
Fonts are embedded once and shared across pages; each additional page adds only its content stream (~1.8 KB). If you need bulk rather than pages, use the exact-size samples.
Can I get a 1,000-page or 10,000-page version?
The generator script takes a page count — change one number and rerun it locally. We cap the hosted files at 500 pages to keep the site light.
Do the files have bookmarks / an outline?
No — pages only. An outline-carrying sample is on the request list; open an issue on the repo if you need it sooner.