ClientPDF
running locally in this tab — nothing uploaded

Open DevTools.
Draw a border.
Watch nothing get sent anywhere.

Add a rectangular border frame to every page of a PDF — pick the margin, the color, and the stroke width — all inside this tab. Page dimensions and content stay exactly as they were. Zero network requests after the page loads, same rule as every other tool here. Check the Network tab yourself.

Drop one PDF here or click to browse

One file at a time · stays on this device

    Why trust this tool

    0 network requests since page load · verified live, not our word for it

    No accounts

    No signup, no email, no watermark. Use it and close the tab.

    No limits (for now)

    Border as many pages as your device's memory allows. No artificial caps.

    Numbering or watermarking a PDF? Both live too.

    Stamp page numbers into any corner, overlay a text or image watermark, or rescale pages to a standard size — same rule: everything stays local. Leave your email and we'll let you know about a Pro batch mode.

    Drawing a frame without touching what's inside it

    Page Borders draws an unfilled rectangular outline on every page — margin, color, and stroke width are all yours to set — via pdf-lib's drawRectangle, the same drawing primitive Watermark's text and Resize's scaling build on, just used here for a stroke-only shape. The margin you enter is validated against half of the page's own smallest dimension, so an oversized value fails cleanly with a message instead of drawing a rectangle that's inverted or doesn't make sense.

    This only adds a border; it doesn't rescale the page like Resize Pages or overlay content like Watermark — everything else on the page stays exactly where it was. Same rule as everywhere else here: a password-protected file has to be decrypted before this or any tool can touch it — here's why.