Example
Input (PDF + page ranges)
File: ebook.pdf (200 pages) Ranges: 1-80, 81-153
Output
ebook-pages-1-80.pdf (80 pages) ebook-pages-81-153.pdf (73 pages) → Download individually or as ZIP
Note
Commas split into separate files. To include multiple pages in one group, use ranges like `1-3`. Source fonts and layout are preserved.
Usage / FAQ
When to use
- Extract specific chapters / pages from a long PDF
- Share only part of a PDF via email or Slack (smaller payload)
- Pull specific clauses from a legal document
- Print a single section of a textbook or paper
- Extract a report's summary or appendix only
FAQ
- Q.What's the range syntax?
- A.`1-3,5,7-9` — commas separate ranges, hyphens denote start-end. Whitespace is ignored. Invalid ranges error out immediately.
- Q.Can I extract in reverse order?
- A.Pages come out in input order — `5-1` reversal is not supported. Use a different tool if you need reverse extraction.
- Q.Is the original PDF preserved?
- A.The source file is untouched — a new PDF is created. Pages are copied so fonts, images, and links survive, but interactive elements like form fields may be partially limited.
Fun facts
PDF page objects are independent — each page references its own resources (fonts, images, content streams). That's why page extraction is just 'copy + update references' with zero re-rendering. Extracting 1 page from 100 keeps the quality identical.
ISO 32000-1 §7.7pdf-lib (used here) is written in pure JavaScript — unlike most PDF libraries (PDFKit, PoDoFo, etc.) which depend on native code. That's why this tool runs entirely in the browser, no server needed.
pdf-libPDFs have a 'linearized' (Fast Web View) mode — reorganized so pages can stream individually. The first page renders before the rest finishes downloading. Split/merge usually breaks linearization — re-linearize big hosted PDFs as a separate step.
Wikipedia — Linearized PDF
Related tools
- Color Converter
Convert colors between HEX, RGB, and HSL with a live preview swatch. Auto-detects any of the three input formats.
- Image to Base64 (Data URI)
Convert an image file to a Base64 data URI for inline embedding in HTML/CSS/Markdown. Up to 5 MB.
- Image Resize & Compress
Resize, crop, and compress images entirely in your browser. Pick width × height, choose crop or fit mode, adjust JPEG quality. Outputs as {original}_{w}x{h}.{ext}.
- Image Crop
Crop images right in your browser — drag to select, lock aspect ratios (1:1, 16:9…), export PNG/JPEG. No upload.
- Emoji Picker
Pick and copy emojis with one click. Search by name (en/ko), browse by category, and keep your recents and favorites in the browser.
- QR Code Generator
Generate a QR code from any text or URL. Adjustable error correction (L/M/Q/H), SVG output, downloadable.
- Color Contrast Checker
Check the WCAG contrast ratio between two colors. Pass/fail for AA Normal/Large + AAA Normal/Large with a live sample.
- Color Palette Generator
Generate a palette from a single base color — shades, tints, complement, analogous, triad, tetrad. HSL-based. 0 dependency.
- CSS Gradient Generator
Build linear, radial, and conic CSS gradients with color stops + angle/position. Live preview + copy-ready CSS.
- PDF Merge
Merge multiple PDF files into a single document. Drag to reorder pages, all client-side — files never leave your browser.
- PDF Rotate
Rotate all or selected PDF pages by 90°, 180°, or 270°. Useful for scanned documents in wrong orientation. All client-side.
- PDF Watermark
Add a text watermark (CONFIDENTIAL, DRAFT, etc.) to every PDF page. Control opacity, rotation, size, color. All client-side.
- PDF Compress
Re-encode a PDF with object stream compression and metadata stripping. Modest size reduction (text-heavy: 5-20%). Image-heavy PDFs need server-side tools. All client-side.
- Image to PDF
Combine JPG, PNG, and other images into a single PDF — in your browser. Reorder pages, choose A4/Letter or original size. Nothing is uploaded.
- Favicon Generator
Make a favicon from an image, emoji, or text — multi-size favicon.ico, apple-touch-icon, PWA icons + ready HTML/manifest snippets, in your browser.