How to restrict pdf printing with owner permission controls
- Step 1Open the Permission Setter and drop your PDF — Load the document into the PDF Permission Setter. On the free tier the file must be under 2 MB and 50 pages; Pro raises this to 50 MB / 500 pages. The PDF stays on your device.
- Step 2Set an owner password — Type an owner password in the required field. This is the key that protects the permission flags — keep it. It is not an open password, so recipients are never prompted for it to read the file.
- Step 3Tick Block printing — Check the Block printing box. Internally this sends
--print=noneto qpdf. Leave Block copying unticked if you only want to stop printing while keeping text selectable. - Step 4Run and let qpdf re-encrypt — The tool encrypts the file with AES-256 and writes the new permission dictionary. A normal run returns qpdf exit code 0; a code 3 means qpdf produced the file with warnings (still valid).
- Step 5Download the print-locked PDF — Save the result. In Adobe Reader the Print menu item is greyed out; the document opens and scrolls normally.
- Step 6Verify in a real viewer before distributing — Open the output in Adobe Reader or Preview and confirm Print is disabled. If you also need a visible deterrent on screen, add a watermark before locking permissions.
What the print flag actually does
The two checkboxes map directly to qpdf encryption flags. There is no draft-quality middle setting in this tool.
| UI control | qpdf flag sent | Effect in a conformant viewer |
|---|---|---|
| Block printing ticked | --print=none | Print command greyed out / unavailable; document still opens and renders on screen |
| Block printing unticked (default) | --print=full | Full-resolution printing allowed |
| Owner password (required) | second arg of --encrypt user owner 256 | The key that protects the permission flags; needed to remove the restriction later |
| Open / user password | first arg of --encrypt, always empty in this tool | Left blank — no prompt to open; the file is still AES-256 encrypted |
Tier limits for the Permission Setter
Permission setting is a single-file PDF operation. Limits come from the shared PDF tier policy.
| Tier | Max file size | Max pages | Files per run |
|---|---|---|---|
| Free | 2 MB | 50 | 1 |
| Pro | 50 MB | 500 | 1 |
| Pro + Media | 500 MB | 2,000 | 1 |
| Developer | 2 GB | 10,000 | 1 |
Cookbook
Concrete print-restriction scenarios and exactly what the tool sets for each.
Block printing only, keep text selectable
A draft policy document circulated for screen review — readers may copy a clause into an email but should not print a hard copy. Tick Block printing, leave Block copying unticked.
Owner password: draft-2026-q2 Block printing: ON → --print=none Block copying: OFF → --extract=y Result: AES-256 encrypted PDF Print : disabled in Adobe Reader Copy : allowed Open : no password prompt
Lock both print and copy on a screen-only deck
An unreleased pitch deck shared with a client for viewing only — no printing, no copying slides' text into a competing proposal.
Owner password: pitch-lock-9f3 Block printing: ON → --print=none Block copying: ON → --extract=n Result: Print : disabled Copy : text selection disabled Modify : still allowed (no UI control to block it)
Print restriction with no open password (the default)
You want anyone who receives the file to open it instantly but not print it. Because this tool never sets a user password, that is exactly the default behaviour.
qpdf command equivalent:
--encrypt "" "my-owner-pw" 256 --print=none --extract=y -- in.pdf out.pdf
^^ ^^^^^^^^^^^^^^
empty open pw print blocked
Recipient experience: double-click → opens → Print greyed outRemoving the print restriction later
The deck is approved and now needs to be printable. You hold the owner password, so you can strip the encryption and all permission flags.
Tool: PDF Remove Password Input: deck-locked.pdf Owner password: pitch-lock-9f3 Output: deck-open.pdf (no encryption, printing allowed again)
Watermark first, then lock printing
A visible DRAFT watermark deters screenshots and photos that the print flag cannot stop. Apply it before setting permissions, because permission-locked files are encrypted.
Step 1 PDF Watermark → text "DRAFT", opacity 0.15 Step 2 PDF Permission Setter → Block printing ON Output: every page shows DRAFT on screen; Print is disabled
Edge cases and what actually happens
Owner password left empty
errorThe owner password field is required. If you run with it blank the tool throws 'Enter an owner password.' before any encryption happens — there is no anonymous-permission mode here, because the password is the key that protects the flag.
Third-party tools that ignore the print flag
by design (PDF limitation)PDF print permission is a flag conformant viewers honour, not a hardware lock. Adobe Reader, Acrobat, and Preview respect --print=none; some non-conformant or specialist editors can ignore it. The AES-256 encryption makes flipping the flag require the owner password, but it cannot stop a viewer that chooses not to enforce permissions at all. For genuinely sensitive material, also set an open password with PDF Password Protect.
No draft / low-resolution printing option
by designAdobe's permission model technically has a 'low-resolution print only' bit, but this tool exposes only full-allow (--print=full) or full-block (--print=none). There is no checkbox for degraded printing — Block printing disables all printing.
Recipient takes a screenshot or photo of the screen
out of scopePrint permission only governs the viewer's Print pipeline. Screenshots, screen recordings, and phone photos are OS-level actions no PDF flag can block. A visible watermark is the practical deterrent for screen capture.
File already encrypted with an open password
limitedqpdf refuses to re-encrypt a password-protected file it cannot open. Remove the existing protection first with PDF Unlock (you supply the password), then set print permissions on the cleared file.
Corrupted or unusually-encrypted PDF
qpdf errorIf qpdf cannot parse the file it exits with code 2 and the tool surfaces 'qpdf could not process this PDF — it may be corrupted or use an unsupported encryption.' Try repairing the file with PDF Repair before setting permissions.
File over the tier size or page limit
blockedFree tier caps at 2 MB / 50 pages. A larger document is blocked before processing with an upgrade prompt. Pro raises the ceiling to 50 MB / 500 pages.
qpdf finishes with warnings
Preservedqpdf exit code 3 means it produced a valid output but logged warnings (often about minor structural quirks it auto-corrected). The tool treats this as success and returns the print-locked file.
Frequently asked questions
Will the Print button actually be greyed out for the recipient?
Yes — in Adobe Reader, Acrobat, and macOS Preview the Print command is unavailable when the file was saved with --print=none. Those viewers read the encrypted permission dictionary and disable printing. A handful of non-conformant editors choose not to enforce permissions, which is a limitation of the PDF model rather than this tool.
Can someone bypass the print restriction?
A standard reader cannot. To flip the print flag in a compliant editor you need the owner password, which only you hold. The realistic bypasses are tools that deliberately ignore PDF permissions, or simply photographing the screen. For stronger control, add an open password with PDF Password Protect so the file cannot be read at all without it.
Do I have to set an open password too?
No. This tool only sets the owner password and the permission flags; the open (user) password is always left empty, so recipients open the file without a prompt. If you want to restrict who can open it, use PDF Password Protect instead, which sets a user password.
Is the file uploaded to your servers?
No. The tool runs qpdf compiled to WebAssembly directly in your browser tab. The PDF, the owner password, and the output never leave your device. When you are signed in, only an anonymous 'one file processed' counter is recorded for dashboard stats.
What encryption does it use?
AES-256 (qpdf's 256 mode, which is the PDF 2.0 / R6 encryption handler). The print permission is part of the encrypted permission dictionary, so it cannot be edited without the owner password.
Can I allow low-resolution printing but block high quality?
Not in this tool. The Block printing checkbox is all-or-nothing: ticked sends --print=none (no printing), unticked sends --print=full (full printing). There is no degraded-print option exposed.
How do I undo the restriction later?
Use PDF Remove Password with the owner password you set. It strips the AES-256 encryption and all permission flags, returning a freely printable PDF.
Does blocking print also block copying?
No — they are independent checkboxes. Block printing only sends --print=none. If you also want to stop text selection, tick Block copying as well (it sends --extract=n). See Block copy and paste for that workflow.
What is the largest PDF I can lock?
Free tier allows up to 2 MB and 50 pages per file. Pro raises it to 50 MB / 500 pages, and Pro + Media to 500 MB / 2,000 pages. Permission setting is single-file only — there is no batch mode for this tool.
Will the restriction survive if the recipient prints to PDF?
A conformant viewer with the print permission disabled also disables 'Print to PDF' and 'Microsoft Print to PDF', because those go through the same Print pipeline. Tools that ignore permissions could still do it — the same caveat as physical printing applies.
My PDF is already password-protected — can I still use this?
Only after removing the existing protection. qpdf will not re-encrypt a file it cannot open. Run PDF Unlock with the current password first, then set print permissions on the unlocked file.
Does this affect accessibility / screen readers?
Blocking printing alone does not affect screen-reader access — only Block copying touches text/graphics extraction, which some assistive tech relies on. If accessibility matters, leave Block copying off and restrict printing only.
Privacy first
All PDF processing runs locally in your browser using PDF-lib and pdf.js. No file is ever uploaded — only metadata counters are saved for signed-in dashboard stats.