KillerPDF Download Microsoft Store KillerMCP
How-To

Every tool, what it does, and how it works.

Each row shows its keyboard shortcut on the right - click a row to expand it. Every tool is one letter, and Ctrl+K finds any tool or command by name.

View & navigate

Single shows one page at a time, centered.

Continuous scrolls every page in one vertical strip.

Two-Page shows facing pages as spreads. Press B to toggle book layout, which leaves the cover page by itself before pairing the remaining pages.

Grid lays out every page as a thumbnail wall for a whole-document overview.

Switch from the toolbar or with F5 to F8. Every mode shares the same annotations and zoom, so nothing shifts when you change layout.

The current page appears in a small corner badge while you navigate, then slides away when the view settles.

Touch: drag with one finger to pan the document, or pinch around the point you want to keep in view. Touch navigation works in every page layout.

F11 goes full screen and hides every control; F11 or Esc brings them back. Alt+M hides just the toolbar while every shortcut keeps working.

Open as many PDFs as you like, each in its own tab.

Ctrl+Tab and Ctrl+Shift+Tab cycle through them.

Ctrl+W closes the current tab, Ctrl+Shift+W closes the others, Ctrl+Shift+Q closes them all, and Ctrl+Q quits KillerPDF with the usual save prompts.

Each tab remembers its own zoom, view mode, page, scroll position and tool, so switching back drops you exactly where you left off.

The active tab always stays visible; when the strip fills up the rest move into an overflow menu.

Right-click a tab for Open Containing Folder, Close Other Tabs and Move to New Window (Ctrl+Shift+N), or drag a tab past the window edge to tear it into its own window. Tabs on top and Tabs on bottom are on the same menu, or press Alt+Shift+Up and Alt+Shift+Down.

Press Ctrl+K, or click the magnifier in the title bar left of Minimize, and start typing. Matching tools and commands appear as you type, each with its shortcut; the arrow keys move through them and Enter or a click runs the highlighted one.

English names match in every interface language, so typing print finds the command whatever language the app is in. Scan, Convert Word or Excel file, Macros and Certificates are searchable before a PDF is open; the rest appear once a document is loaded.

A result runs exactly what its shortcut does, even if you have moved that shortcut or turned keyboard shortcuts off.

Press F10 to show two documents side by side in one window - each pane is its own card, and the focused one carries an accent ring so it is obvious which pane the toolbar, sidebar and page list are acting on.

Click either pane to move focus, or drag its resize handle to size it; neither pane can be squeezed below a readable width.

Drag a tab from one pane's strip onto the other to move it across. View state and document-color inversion are tracked per pane, so changing one side does not disturb the other. F10 again closes the split.

A maximized or snapped window splits its space evenly instead of squeezing the second pane down to its minimum.

Choose Compare PDFs from the toolbar, then select the second document. KillerPDF opens both files side by side and pairs their pages.

Page navigation, zoom and scrolling stay synchronized. Difference regions are marked directly over the pages, with a changed percentage for each pair.

The results also identify different page dimensions and pages that exist in only one document. You can export the comparison report without changing either source PDF.

The results bar has Previous and Next buttons that step through the changed regions. It docks below the documents by default; drag it into the upper half to dock it above. Structural comparison report (Ctrl+Shift+D, then C, with a document in each pane) compares content, resources and geometry instead of pixels, and compare-structure does the same from a script, exiting 3 when the files differ.

A dockable sidebar with six panels, each with a button on the rail beside it: Pages (live thumbnails), Outline (the PDF's bookmarks), Comments, Attachments, Layers and Signatures. Click a button to open its panel, and click the lit button again to close the sidebar. F9 toggles the whole thing.

Alt+1 to Alt+6 open the six panels in that order.

Reorder pages by dragging a thumbnail; a drop indicator shows where it will land.

Multi-select: select several thumbnails and drag any selected page. The whole selection moves as one ordered block.

Drop PDFs or images on the insertion line to place them at that exact page position. In Split Pane, selected pages can also be dragged directly into the document on the other side.

Multi-select pages, then rotate, extract or delete them all at once.

Right-click a thumbnail for the full page menu: Insert Blank Page After, Merge PDFs, Duplicate Page, Rotate CW and CCW, Transform, Color Correction, Fix Page Orientation, Straighten Scanned Pages, Divide Spreads, Rasterize Region, Export table, Edit paragraph, OCR Page (Copy Text), Move Page Up and Down, Reverse Page Order, Extract Page(s), Export page as image, Delete Page(s) and Stamp Pages.

Drag the slim splitter to resize the sidebar. It docks on the left, right, top or bottom: pick a side from the sidebar's right-click menu, or press Shift+F9 to move it to the next one. It remembers your choice and the order of the rail icons. A toggle strip collapses it to a thin rail.

The Outline panel shows the PDF's bookmark tree; click any entry to jump to its page. Top-level bookmarks start visible while deeper levels begin folded, and your expand/collapse choices survive tab switches and bookmark edits. It sizes itself to the widest bookmark the first time you open it.

Comments lists the review comments and measurements page by page, with a filter for each; click one to go to it. Attachments lists the embedded files, and a double-click saves a copy. Layers shows or hides each layer, saved in the PDF and undoable. Signatures shows each signer and whether the signature is valid. The pencil in each panel's header opens its full editor or report.

Right-click the toolbar and choose Customize toolbar..., or find it in Search Tools. Reorder the buttons, move any of them between the left and right sides of the toolbar or into the More menu under the chevron, and add or remove separators. Drag a button, double-click it, or use the buttons beside the lists, and Reset restores the default layout. Buttons you put in the More menu stay there at any window width, and when the window is too narrow the others still move into it as before.

The same right-click menu sets the Toolbar appearance: Small icons, Large icons, No text, Text beside icons, Text under icons or Text only, also on Ctrl+Shift+1 to Ctrl+Shift+6 in that order. Hide toolbar (Alt+M) takes the bar away until you want it back.

Ctrl+F opens a small floating search bar you can drag anywhere.

It searches the whole document as you type (after two characters), case-insensitively, and can match phrases that run across adjacent words.

Enter jumps to the next match, Shift+Enter to the previous, wrapping around the document; the status reads current / total.

Every match stays highlighted while you scroll - the current one brighter and thicker, the rest dimmer - and the highlights survive zooming and re-rendering.

Match Case and Whole Word sit on the bar, F3 and Shift+F3 also step through the matches, and Esc closes it. The summary reads N matches on M pages. To change the text you find, see Find and replace under Annotate.

Ctrl+ / Ctrl-: zoom runs from 5% to 500% in 15% steps; Ctrl+0 snaps back to 100%.

Ctrl + mouse wheel zooms around the point under your cursor, so the spot you are reading stays put.

The zoom box also offers Fit Width and Fit Page, computed exactly to the page size.

In Grid view the wheel changes the number of columns instead, so you zoom by fitting more or fewer pages across the window.

Ctrl+1 is actual size, Ctrl+2 fits the width and Ctrl+3 fits the page. Shift + mouse wheel scrolls sideways.

Clickable links already in the PDF light up with a hand cursor.

Left-click follows them - an internal link jumps to its page, an external one opens in your browser.

Right-click a link for Open Link, Copy Link Address, Copy Email Address or Remove Link from PDF. If you would rather be asked before a web link opens, turn on Confirm before opening links on the About card (F12).

Internal jumps are recorded, so Alt+Left and Alt+Right, or the mouse back and forward buttons, retrace them.

Optional Previous and Next page buttons can sit in the title bar. They are off by default; turn them on from the title-bar menu or with Alt+Shift+N. The choice is saved and follows the focused document.

Close to system tray, on the About card (F12), keeps KillerPDF running in the notification area when you close the window, which is how automatic folders keep working. Click the tray icon to bring the window back; its menu offers Open KillerPDF and Exit, and Exit still asks about unsaved changes.

On Windows 11 the maximize button offers snap layouts. More than one main window can be open, and every window, with its tabs, size and position, comes back at the next launch.

Annotate

Press T, click anywhere, and start typing a note. Enter inserts a new line, Ctrl+Enter saves it, and Escape cancels.

While it is selected, the floating text bar sets the font, point size, color, an optional background fill, and Bold / Italic / Strikethrough / Underline.

Use Spacing to adjust the distance between characters. The live editor, line wrapping and saved PDF all use the same spacing, which is useful for lining text up with preprinted form boxes.

Drag the box's corner handles to set its width - the text wraps to fit.

Double-click a note any time to re-edit the wording.

With the Text tool (T), double-click a line of the PDF's own text. KillerPDF reads the words under the click and opens an editor over them in the same font, size and color. Type the change and press Ctrl+Enter.

The edit rewrites the page itself: the old glyphs leave the page's content stream and the new text is written in their place, so it reads, searches, copies and prints as ordinary text in any PDF viewer. Nothing is laid on top of the page, and rotated text is edited along its own baseline.

The line keeps its original font whenever that font can show what you typed. If it cannot, or you pick another typeface on the text bar, the line is written in an installed Windows font with only the glyphs it needs embedded, and the status bar says which font was used. The text bar also sets size, color, letter spacing, underline and strikethrough.

A rewrite is one Ctrl+Z. The Select tool (V) selects and moves things; it does not start a text edit.

Scans and other pages with no real text fall back to the cover method: KillerPDF drops two linked annotations, an opaque Cover that samples the page color and hides the original words, and a Text box on top with your replacement. Right-click either half to Select Cover / Select Text or to Unpair them, and the status bar tells you the edit is a cover. Convert Scan to Text (Ctrl+Shift+T) turns a scan's words into real text that can be edited the normal way.

See how the rewrite and the cover fallback work on the Technical page →

Press Alt+Shift+P, use the paragraph button on the text bar, or right-click a block of text and choose Edit paragraph. The whole block opens in a resizable box with its own font size, alignment and line spacing, the text rewraps as you type, and the preview is exactly what Apply writes. Undo takes it back in one step.

It is deliberately strict. A paragraph qualifies when its lines share a left edge, sit an even distance apart, use one font at one size and read left to right. Encrypted, signed, certified, tagged and rotated documents are refused, as are pages with clipping or reusable form content, and KillerPDF names the rule that stopped it. This first version covers Latin text and ordinary punctuation.

Ctrl+H opens the search bar with a Replace row. Enter replaces the highlighted match and Ctrl+Alt+Enter replaces every match in one pass, as one undo.

Each match is rewritten in the page the same way as a double-click edit. Matches on scanned pages fall back to covers, text you placed yourself is changed in place, and rotated text is skipped and counted so nothing disappears silently.

Press H and drag to lay a highlight over text. Color and opacity live on the bar; the default is yellow at low opacity.

The Highlight tool has an Eraser toggle, and it works two ways.

Brush: drag over a highlight and it carves a smooth, round-edged gap out of it - one anti-aliased shape, not a blocky strip or seam. A circular brush footprint shows where the next pass will land.

Box: drag a rectangle (shown as red marching-ants) and it deletes whole annotations inside the box.

The brush only carves fill highlights and splits ink strokes; text, images and signatures are left untouched.

Strikethrough and Underline have no toolbar button: select text with the Select tool, then right-click and choose Highlight, Underline, Strikethrough or Redact. Their color and opacity are separate from the highlight's.

Press D for freehand Draw - round-capped ink that keeps drawing stroke after stroke without re-arming.

Draw has its own Eraser toggle: a brush (with a translucent gray footprint preview) that passes over your ink and splits the strokes wherever it touches, rubbing out just those parts rather than deleting whole strokes.

Press L (or U) for the Line tool, a straight two-point segment.

Turn on Level and the line snaps to perfectly horizontal or vertical, whichever your drag is closer to.

All three carry color, opacity and width on their bar.

The Shapes tool draws rectangles, ellipses and free-form polygons, each with an optional fill - pick the sub-mode and toggle Fill on the bar.

Box keeps the classic drag-a-rectangle gesture. Ellipse drags the same way as a closed outline.

Freeform places points click by click: click the first point again (its target lights up when you are close) or double-click to close the polygon, Esc cancels, Backspace removes the last point.

Shapes share the draw bar's color, size and opacity, and move, resize, flatten and print like any other drawing.

Press I, click the page, and pick an image from the image library, or import a new one (PNG, JPG, BMP, GIF or TIFF). The library is shared with watermarks and signatures, so an image you import once is there for all three.

It lands no larger than half the page's longest side and is never enlarged; drag a corner handle to resize it.

You can also right-click the page and choose Image to drop one exactly where you clicked.

With the Select tool, drag an empty area to rubber-band select everything the box touches. Because the box floats above the pages, one drag can grab annotations across several pages in Continuous or Grid view.

Shift-click adds or removes individual annotations from the selection; Ctrl+A selects them all.

Right-click a multi-selection and choose Group to bind them together. After that, clicking any one moves, copies or deletes the whole group as a unit.

Ungroup dissolves the group; Remove from group drops just one member.

Use Raise and Lower on the right-click menu to change which annotation sits on top where they overlap.

A selected annotation gets an accent outline and four corner handles. A text box's handles set its width; images, signatures and highlights resize freely. The outline and handles stay the same on-screen size no matter how far you zoom.

When you drag across real PDF text, selection follows the page's reading columns instead of sweeping across neighboring columns; copied text keeps that column order.

The Comments panel (Alt+3) lists every review comment and reply in the PDF, grouped by page with replies nested under their parent, and a filter for comments or measurements. Click a row to jump to it; double-click to open the Comments dialog.

The dialog (Ctrl+Shift+D, then K) edits comment text and offers Reply, Delete, Go to Page and Add Comment, which adds a note on the current page. Nothing is written until you Save, the save is one undo step, and the author is your Windows user name. Comments from other readers' PDFs show up too, and yours are saved as standard PDF annotations so other viewers show them. Deleting a comment that sits on a highlight deletes the highlight as well.

Edit & organize

Press C to crop. A box appears inset from the edges with draggable corner handles, plus exact X / Y / W / H fields.

Switch the units between points, inches or %. Pressing Enter in a field both sets and applies the value.

Crop the current page, a typed range like 1-3,5, or tick All for every page.

It writes a real /CropBox and /TrimBox into the PDF and is fully undoable with Ctrl+Z. The page content outside the box is hidden, not deleted.

Choose Measure on the toolbar or press M, then pick Distance, Perimeter, Area or Angle on the Measure bar. Shift+M steps to the next type. Click two points or drag for a distance. For a perimeter or area, click each corner and press Enter or click the first point to finish. For an angle, click one end, the corner, then the other end.

Points snap to the lines and corners on the page. Hold Alt to place a point freely, or hold Shift to keep a line at 45 degree steps. Esc cancels, and Backspace takes back the last point.

Set Scale on the Measure bar gives the page, or every page, a drawing scale. Type a ratio such as 1 in = 10 ft, or draw a line along something whose length you know. Imperial and metric units are both available, and the bar keeps showing the page size.

Measurements are saved in the PDF as standard measurement annotations, so other PDF viewers show them too, along with the scale. Drag a point or the label to adjust one, restyle it with the draw bar's color, size and opacity, or press Delete to remove it.

Report on the Measure bar, or Ctrl+Shift+D then Y, lists every measurement page by page. It can copy the list or save it as CSV or JSON.

Press R to open Transform. Quick 90-degree turns are separate actions on the page and thumbnail right-click menus.

Ctrl+R rotates selected pages 90° clockwise. Ctrl+Shift+R rotates them 90° counterclockwise.

The Transform window does more: rotate by any angle, scale, flip horizontally or vertically, and straighten a crooked scan by drawing a level line across it.

Selected-page batches: open Transform with several thumbnails selected to preview each page and apply one undoable operation to the complete selection.

Output quality: choose 72 to 600 DPI, keep full color, convert to grayscale, or use an adjustable black-and-white threshold. Optional JPEG compression provides a quality control for reducing output size.

Levels: adjust black point, white point and gamma against a live histogram to recover faded scans or improve contrast before applying the transform.

Correct trapezoidal distortion: expand Perspective, turn the correction on, then drag the four green corner handles to the corners of the rectangular object in the page. This is useful for photographed documents, signs and screens that appear narrower on one side.

The four sides must form a valid shape and must not cross. Use Reset in the Perspective section to return the handles to the page corners, or Reset all to clear every transform setting.

The preview updates as you move the handles. Choose Apply to rebuild the page at full resolution. The edit is physical, includes the page annotations, refreshes every visible view immediately, and can be reversed with Ctrl+Z.

Press E, or pick Color Correction on the toolbar or a thumbnail's right-click menu. It opens the Transform window on its color section: Exposure (-3 to +3 EV), Saturation (0 to 200%), and white balance Warmth and Tint (-100 to +100), with Auto options for exposure and white balance. The preview updates live and can be zoomed and panned.

Like every Transform, Apply rebuilds the page as an image, so selectable text on that page is lost; a warning says so first. With several thumbnails selected it works on all of them as one undo.

Insert or append blank pages (Letter, A4, Legal, the current page size or a custom size), delete, duplicate, move up or down, reverse the order, and extract pages to a new PDF. Delete and Extract take a typed range like 1-3,5,9-12, prefilled from the thumbnails you selected, and Delete will not remove the last page.

Most of these live on the thumbnail right-click menu; drag thumbnails to reorder.

Shortcuts: Alt+Shift+A adds a blank page at the end, Alt+Shift+R reverses the selected pages or the whole document, Alt+Shift+X extracts, Alt+Shift+B merges other PDFs into this one, and Alt+Shift+C saves the document into a .zip and reports the size before and after.

Structural edits are undoable, and your annotations follow their pages.

Fix Page Orientation (Alt+Shift+O) turns pages upright by setting a page rotation, so nothing is redrawn. Pages with text are judged from the way their text runs; scans are read with OCR in each direction and the reading that makes sense wins, which needs the OCR model for your language and offers to download it. Pages it cannot read are left alone and counted.

Straighten Scanned Pages (Alt+Shift+S) measures each scan's tilt from its lines of text and levels the image, keeping the page size. Only scanned pages without a text layer are changed, so run it before OCR; a tilt under 0.15 degrees is left alone.

Divide Spreads (Alt+Shift+D) splits scanned two-page spreads. Drag the divider on the preview, choose left and right or top and bottom pages, and whether to do this page, the selected pages or all pages; each spread becomes two pages in reading order.

Fix Page Orientation and Straighten act on the selected pages when two or more are selected, otherwise on the whole document. Each is one undo.

Drag a box on the page preview and that box becomes a single image, while everything outside it stays live text and vectors. The dialog counts the text runs, images and drawings inside the box before you apply, and the resolution runs from 36 to 1200 DPI (300 by default). Useful for freezing one chart or signature block without flattening the whole page. The text under the image stays in the file, so it can still be selected and searched.

Open images - JPG, PNG, BMP, GIF, TIFF - as PDF pages; multi-page TIFFs and GIFs come in frame by frame.

Drop a folder and it recurses through everything inside; drop a .zip and it extracts first.

When you drop several files at once, KillerPDF asks whether to merge them into one PDF or open each separately (up to 50 at a time).

Import images as PDF on the Open drop-down opens the images you choose as a new, unsaved PDF.

Press S to open one window with a live preview that steps through your pages, holding two independent jobs.

Page numbers: set a start number and a format using {n} for the current page and {N} for the total - for example Page {n} of {N}.

Choose the font size, color, a page range, and one of eight positions (or drag a custom spot).

Turn on Mirror and the numbers flip to the outer edge on facing pages, like a printed book.

Watermark: stamp text or an image across any page range, with adjustable size, angle (-90 to 90), opacity and position.

Stamps draw beneath your annotations, count as a single undo, and you can double-click one to edit it again.

Forms & signing

Interactive form fields - text, multi-line, dropdowns, checkboxes, radio groups and signature fields - become editable right on the page, in every view mode.

While a text field is focused, a small font-size stepper ( - N + ) lets you size the text, and it is saved into the field.

Comb fields cap input at their printed cell count and save one character in each box.

Form-aware OCR: existing field rectangles can become OCR boundaries. KillerPDF honors numeric constraints, maximum lengths and comb cells, then checks recognized text against dropdown and list choices.

Fields show a faint cream fill with an accent border when focused.

On save your entries are written back into the PDF and the fields stay real, editable form fields - they are not destructively flattened.

Calculated fields recompute when you commit a value, using a limited built-in subset of field scripts; there is no general JavaScript interpreter, and a field with an unsupported script says so instead of running it.

Press F and drag a rectangle to create a fillable text field, white with a thin red border; a field at least 32 points tall is multi-line. With the Forms tool you can move a field, resize it by its corner grip, delete it, or right-click it for a fill color.

Right-click a text field with the Forms tool and choose Save as Field Preset to keep its size, font size, text color, background and border; the page's right-click menu then inserts that preset in any document. The Forms tool creates text fields only, and Recognize form fields adds check boxes; radio groups, drop-downs and list boxes can be filled but not created here.

Ctrl+Shift+D, then H opens the Form data menu. Recognize form fields finds drawn boxes and lines that read as fields and proposes text fields and check boxes for review; tick the ones to add and rename them before they go in.

Export form data writes XFDF, FDF or JSON, comments included. Import form data reads FDF or XFDF and previews the match first (matching fields, skipped fields, comments) with an option to flatten the fields afterward; the import is one undo. CSV is not a form-data format here; it belongs to Data merge.

Convert XFA form turns a supported XFA layout into standard fields, and Flatten form fields paints the values into the page and removes the fields while the rest of the page stays live text.

Sign a document cryptographically with a certificate from a .pfx / .p12 file or the Windows certificate store.

Windows-compatible USB security tokens are supported through the certificate store and can show their normal PIN prompt while signing.

It uses SHA-256 and embeds the whole certificate chain.

Add an optional reason, location and contact, and it writes a signed copy alongside the original.

Tick Show a visible signature to draw a text block on a page of your choice. The default text reads Digitally signed by {name}, Date, Reason and Location; you pick the corner, width, height and text size. The appearance is drawn text only, and the cryptographic signature is the same with or without it.

Add a trusted timestamp. The timestamp server records when you signed, so the signature still checks out after your certificate expires. It needs an internet connection.

Open it with Ctrl+Shift+G or from the Signatures panel (Alt+6). Signing includes your unsaved edits; an unchanged document is signed on its original bytes, so earlier signatures survive and you can co-sign. Saving over a signed file with edits warns that the signature will be removed.

Press G to open the signature popup. Draw a signature on the pad with three pen widths (thin, medium, thick), or import an image of one.

It keeps two kinds: full Signatures and shorter Initials, saved for reuse so you only draw them once.

Import also takes SVG, kept as vectors, and for a scanned signature a Sensitivity slider removes the paper background. Saved signatures live in the shared image library with images and watermarks.

Drop a saved signature anywhere on the page, or straight into a form sign-field - it centers and scales to fit, and remembers your pick for that kind of field.

A signed field then offers Change or Remove.

Secure & redact

Press X and drag over anything that must go. The Redact bar counts the marked areas and pages, and nothing is removed until you click Redact, so you can mark across the whole document first. Marks survive page edits and Undo.

Find text marks every hit for words or phrases, a regular expression, or a built-in pattern: email addresses, phone numbers, Social Security numbers, credit card numbers (checksum verified) or bank account numbers (IBAN). It searches page text, form field values and annotation text, lists the hits by page with check boxes, and Mark search results marks the current Ctrl+F matches. Mark pages takes whole pages.

Redaction properties set the fill color and an optional label: free overlay text, or a code from the FOIA and Privacy Act exemption lists, with a live preview.

Clicking Redact removes the covered content from the page itself: text runs, vector paths and image pixels under each mark, including text in form fields and annotations. Text outside the marks stays searchable and uncovered image pixels stay sharp. The result is read back and verified; if marked content is still exposed, the redaction is refused and nothing changes.

A scanned image, gradient or artwork that cannot be cut on its own triggers a prompt: Replace page with image, Replace all such pages or Skip this page. Replacing turns that page into a picture with the marked areas blacked out, so nothing on it is editable afterward; KillerPDF never does this without asking, and skipped pages keep their marks.

Finish redaction can also strip comments and markup, attached files, form fields and their data, hidden layers, scripts and actions, links and bookmarks. Document information, metadata and page thumbnails are always removed. Tick Save the result as a new file and the redacted copy opens in an empty second pane or a new tab with the original untouched. From a script, redact in.pdf out.pdf --find email,ssn --sanitize all; add --dry-run to see what would go.

Protect Document, on the Save menu, writes an AES-256 encrypted copy and leaves the open file unchanged. Set a password to open it, a permissions password that restricts printing, copying and editing, or both.

Or encrypt the copy for certificate recipients, so only the holders of those certificates can open it. KillerPDF opens such files with a matching certificate from your Windows certificate store.

The permissions password controls three groups: Printing, Copying text and images, and Editing, comments and form filling. Leave it empty and a random one keeps the restrictions in force. The copy must have a different name than the original, and a signed document warns that its signatures will not survive in the protected copy. From a script, protect in.pdf out.pdf --user-password p --allow print,copy.

A PDF with an open password asks for it before anything is shown. A PDF whose owner restricts editing opens read-only with its text and bookmarks intact; click Unlock and enter the owner password to edit it. Forms whose author allows filling can still be filled and saved, keeping their protection, as in Acrobat.

A PDF encrypted for certificate recipients opens when a matching certificate is in your Windows certificate store; if that certificate may not edit, the file opens read-only.

Remove Password, on the Save menu, is enabled when the open file was password protected; save in place and it is written without protection. From a script, decrypt does the same, and --secrets-stdin passes passwords without putting them on the command line.

A protected PDF that is signed opens read-only, because unlocking it for editing would clear its signatures. Saving a protected PDF, even after Unlock, keeps its passwords and limits; only Remove Password takes them off.

The Signatures panel (Alt+6) lists each signature with its status, Valid, Invalid, Not fully verified or Not signed, plus "changed after signing" when the file was edited afterward, and a visible signature is drawn on the page itself. Double-click a row, or press Ctrl+Shift+D then W, for the full Signatures report: signer, certificate chain, signing time, trusted timestamp, revocation evidence and what changed since.

Valid means integrity, trust, certificate time and revocation all passed. An expired certificate alone does not make a signature invalid, and a trusted timestamp is used to judge it as of signing time. Trust comes from Windows plus roots you mark trusted in KillerPDF, revocation is checked offline, and a certificate embedded in a PDF never becomes a trust anchor on its own.

Certificates (Ctrl+Shift+D, then Z, also without a document open) browses the Windows root and intermediate stores read-only and lets you import .cer, .crt or .pem certificates, mark them Trust as Root or remove that trust, and inspect subject, issuer, validity, SHA-256 fingerprint and type. These choices affect KillerPDF only; Windows trust is unchanged.

OCR & output

KillerPDF reads text off scans and images with on-device OCR - nothing is ever uploaded.

OCR Page (Ctrl+Shift+O) copies the current page's text to the clipboard and reports a confidence figure.

OCR Region (Ctrl+Shift+I) lets you drag a box to OCR just that area to the clipboard.

Make Searchable PDF adds an invisible real-text layer aligned over the words, so search and text-select start working on a scan.

Extract All Text dumps the whole document to a .txt or .md file.

Languages and models: OCR supports twenty languages: English, Spanish, French, German, Czech, Hungarian, Italian, Japanese, Kazakh, Polish, Russian, Slovenian, Turkish, Ukrainian, Norwegian, Portuguese, Bengali, Vietnamese, and Chinese in Simplified and Traditional forms. Models download on demand and remain cached.

Each language offers a Standard model (smaller, faster) or a High Quality model (larger, more accurate), and once downloaded they are cached so you only fetch them once.

Pages are rendered at about 300 DPI for accuracy.

Where Make Searchable PDF hides a text layer under the scan, Convert Scan to Text replaces the scanned words with real text in a matching typeface, saved to a new PDF. A review window shows each word as scanned beside its text version, least certain first; clear a word to keep it as a scan.

Words that do not closely match the scan stay as images and remain searchable, pages that already have text or drawings are left alone, and where it can the result keeps compact lossless black-and-white images. Converted text can then be edited with the Text tool like any other PDF text. From a script, scan-to-text in.pdf out.pdf --review folder\ writes each word as scanned beside its text.

Ctrl+P opens a real print preview. The Printer, Layout and Output sections collapse independently so the controls you need stay in view.

Choose the printer's paper size and paper source, then print 1, 2, 4, 6 or 9 pages per sheet (N-up), with scale (Fit / Actual / Custom %), a 9-way alignment, margins, a page range, color or black-and-white, copies, and two-sided output when your printer supports it.

A subset selector under Pages prints all pages, odd only, or even only - applied on top of the page range, with the preview following along. Print the odds, flip the stack, print the evens: manual duplex for printers without a duplexer.

Live preparation and spool progress show exactly where a large print job is, and cancellation remains available while it is being prepared.

Output is rendered at a true 300 DPI.

If the document has annotations or stamps, they are flattened onto a throwaway copy for printing, so your live document is untouched. You can also save a flattened, uneditable copy.

Flatten on the toolbar saves a copy in which every page is an image, so nothing can be edited or selected. Pick Color, Grayscale or Black and white, a resolution from 24 to 1200 DPI (150 by default), a black-and-white threshold, and optional JPEG compression with a quality slider.

Scanned look adds up to five effects: tilt pages slightly, warm paper tone, scanner grain, soft focus and a shadow along the page edge. The tilt is decided per page, so a page always looks the same. A page whose content cannot be drawn exactly is named in the result rather than refused.

Flattening form fields is a different thing and keeps the page as text: see Form data under Forms & signing. Rasterize Region flattens one box instead of the whole page.

Reduce File Size on the Save menu writes a smaller copy and leaves the open document alone. Unused objects are removed and streams compressed every time; optionally, images drawn above 1.5 times a chosen resolution (36 to 1200 DPI, 150 by default) are downsampled, with a JPEG quality slider from 25% to 100%. The status line reports the size before and after and how many images were resampled.

It keeps uncompressed XMP metadata and the resources that forms and inline images rely on, and if it had to repair broken references it says so without claiming the missing content came back. Compress to ZIP (Alt+Shift+C) is the simpler cousin: it zips the current file and reports both sizes. From a script, optimize in.pdf out.pdf --images 150 --strip metadata,thumbnails.

F4 opens Document Info.

View and edit the PDF's title, author, subject, keywords and creator, all saved back into the file.

Click the footer status line or press Shift+F4 to show the current file size briefly.

KillerPDF sends no telemetry. Document processing, including OCR, runs locally. Checking GitHub for updates and downloading updates or extra OCR models use the internet. You can turn startup checks off; installing an update requires confirmation.

Clear list lives on the start screen's Recent panel and in the Open dropdown, and the About window (F12) has a "Don't remember recently opened files" toggle next to Clear all Data - turning it on also empties the existing list.

Clear all Data removes saved settings, OCR models and temporary files where possible. Locked files may remain. Installed copies keep saved signatures and logs; portable copies also remove the KillerPDF-Data folder. Your source PDFs are not deleted.

KillerPDF.exe is the compact installer. It requires the Microsoft .NET 10 Desktop Runtime and offers per-user or all-users installation. If the runtime is missing, the installer opens Microsoft's official download page.

KillerPDF-Portable.exe contains its own runtime and can run without installation, including on an offline computer.

Per-user installs live under %LOCALAPPDATA%\Programs\KillerPDF. All-users installs live under %ProgramFiles%\KillerPDF. The installer prevents both scopes from remaining installed at the same time.

The footer's PORTABLE button installs the running portable copy in place, for this account or for everyone, and the installed copy reopens the active document. Unsaved changes hold the install.

Updates: KillerPDF checks GitHub at startup (turn it off on the About card) and asks before installing. An update installs only when its checksum, version and publisher signature all check out, and it waits until every document in every window is saved.

The installer can add a File Explorer and Outlook preview of PDFs, with scrolling, zoom and read-only opening. It replaces the previous PDF preview handler and restores it when KillerPDF is removed. Not in the Store package.

Thirteen themes - Dark, Light, Black, 98SE, Blood, Greed, Cyanotic, Ectoplasm, Decay, Malaise, Sepulchre, Delirium and Mourning - switch live, and four of them - Dark, Light, Black and 98SE - each take one of eight accent colors, so 41 looks in all.

The sidebar docks on the left, right, top or bottom.

The interface is translated into twenty languages, including Vietnamese, Italian, Kazakh, and Russian. Every interface language has a matching downloadable OCR model.

Invert document colors: the moon toggle at the bottom of the sidebar rail (or the N key) renders the document with inverted colors for dark-mode reading. In split view this setting belongs to the focused pane. It is display only - saving, printing, exporting, OCR and thumbnails keep the document's true colors - and is remembered across launches.

Shift+N, or a right-click on the moon, toggles Invert images too. Images are left alone by default because many scans are one full-page image.

Film Grain, the faint texture over the chrome, is a switch under the theme list and on Alt+Shift+G. It is on by default, off in 98SE, and off whenever a Windows contrast theme is active.

App size: scroll the mouse wheel over the title-bar logo (or Ctrl+Shift and + / -, Ctrl+Shift+0 to reset) to scale the whole interface from 70% to 250% - toolbar, sidebar and tabs, while the document keeps its own zoom. Made for tired eyes and high-DPI laptops alike.

Rendering, text extraction, search, selection, editing, printing, export, saving, flattening, signing, encryption, searchable OCR and forms all run on The KillerPDF.Engine, an independent .NET 10 PDF library built from scratch. 1.9 retired PDFium, Docnet.Core and PdfPig; Tesseract remains as the OCR fallback.

The Engine preserves complete page and catalog structures, including forms, tags, bookmarks, named destinations, layers, attachments and inherited page settings. It validates output before writing and fails safely when an unsupported structure cannot be preserved.

Open the Engine architecture, API and validation guide →

Convert & export

Export Document on the Save menu writes Word (.docx), Excel (.xlsx), PowerPoint (.pptx), HTML, Markdown, plain text or JSON, with a page range (blank for all). For Word and PowerPoint choose Editable content, which gives real text, ruled tables and pictures, or Page pictures, where each page becomes one image that cannot be edited piecemeal.

Before saving, KillerPDF lists what the format cannot carry, such as vector drawings, non-horizontal or reversed text, links and omitted image data, with the affected pages, so you know what to check. Exports include your pending edits and never overwrite the source file. A scanned page has no text to export, so run OCR first.

From a script, export in.pdf out.docx --pages 1-3 --report; the extension picks the format. Export is also a macro step, so an automatic folder can convert every PDF dropped into it.

On the Save menu, a thumbnail's right-click menu or Alt+Shift+T, Export table lets you drag a box around one table or let Find table detect it. Every cell is shown for correction before you save to XLSX or CSV; XLSX stores the values as text, and anything that looks like a spreadsheet formula is neutralized so a cell can never execute.

It needs a complete rectangular grid of selectable horizontal text. Scans, merged cells and broken borders are not supported yet.

On the Save menu. Choose PNG or JPEG, a resolution from 24 to 1200 DPI (150 by default) with a live pixel-size readout, and a page range. A thumbnail's right-click menu has Export page as image for a single page. From a script, to-image in.pdf imgs\ --dpi 300 --format jpg; --transparent keeps PNG backgrounds clear.

On the Open drop-down, or in Search Tools before any PDF is open, Convert Word or Excel file turns a .docx or .xlsx into a new, unsaved PDF laid out by KillerPDF itself. Legacy .doc and .xls files are converted by an installed Microsoft Word or Excel in a hidden instance, with macros disabled; without Office a message says so. PowerPoint files are not accepted. From a script, convert-office in.docx out.pdf.

Scan... on the Open drop-down lists your TWAIN scanners, optionally shows the scanner's own settings window for color, resolution and pages, and opens the scanned pages as a new unsaved PDF. It needs the 64-bit TWAIN manager that scanner drivers install; otherwise a message explains. An interrupted scan keeps the pages it recovered and names a recovery folder. From a script, scan out.pdf --scanner "name", and scan --list lists the scanners.

Document tools

Ctrl+Shift+D opens the Document tools menu at the Save button, and the letter beside each tool runs it, so Ctrl+Shift+D then P is the Preflight report. Every tool is also in Search Tools (Ctrl+K). Reports copy to the clipboard, and most have a command-line twin that prints the same report as text or --json.

The letters: P Preflight report, R Print production report, S Separation preview report, A Accessibility review, W Signatures report, Z Certificates, L Layers report, E Edit layers, F Portfolio report, O Edit portfolio, U Edit portfolio structure, T Edit attachments, K Comments, Y Measurements, N Navigation audit, B Create bookmarks from headings, G Edit page labels, V Initial view settings, C Structural comparison report, X Guided tasks, M Macros, D Data merge, I Insert table of contents, H Form data, J Bookmark data, Q Production layouts and Bates batches. Without a document open the menu offers Macros and Certificates.

The Preflight report runs the print-production checks: structural integrity, page boxes, output intent, image resolution (300 DPI minimum), font embedding, transparency, color usage, PDF/A and PDF/UA declarations, layers and document metadata. It is a checklist, not a full PDF/A or PDF/X validator, and says so where a check is unsupported.

Corrections are shown Before and After and applied only when you confirm: set the document language, fill in a missing Title, Author, Subject or Keywords, remove a Bleed, Trim or Art box from a page, or add an output intent from an .icc or .icm profile. From a script, preflight in.pdf --profile print --json exits 3 when there are findings.

Lists what gets in a screen reader's way, with a page preview for each finding: a missing or invalid document language, no structure tree or content that is not marked, figures without an alternate description, form fields and links without a description, and tables without header cells.

Each finding has a guided repair: set the language, add a description (a field description applies to every occurrence of that field), edit the reading order, or mark a table's header scope as Row, Column or both. The document is rechecked after each fix and every repair can be undone. KillerPDF states its own limit plainly: these checks do not confirm full PDF accessibility, and reading order and descriptions still need a human read. The accessibility command prints the same findings.

The Print production report lists every page's MediaBox, CropBox, BleedBox, TrimBox and ArtBox with sizes, marked explicit or inherited, the process and spot colorants with the pages that use them, and the output intents with their profiles.

Separations shows the page one ink plate at a time, black where the ink is at full coverage and white where there is none, with an All inks option; plates with no ink on the current page are dimmed, and a Report button prints the list. From a script, separations in.pdf plates\ --dpi 150 writes each plate as an image.

The Layers panel (Alt+5) shows or hides each layer, saved in the PDF and undoable; a locked layer is marked and cannot be toggled. The toggles show effective visibility and leave the other layers as they were, and printing honors each layer's print setting.

Edit layers renames layers and sets Visible and Locked for each (names must be unique); the Layers report lists them with their state. Flatten keeps layers and their visibility, optimize --strip layers removes hidden layers from a copy, and macros have a Flatten layers step.

The Attachments panel (Alt+4) lists the embedded files; double-click one to save a copy, or right-click for Add attachment, Save and Edit attachments. Edit attachments sets each file's name, description, MIME type and relationship (Source, Data, Alternative, Supplement and so on) or removes it.

For PDF portfolios, the Portfolio report describes the collection, Edit portfolio sets the view mode (Details, Tiles or Hidden) and the initial document or strips the portfolio metadata while keeping the files, and Edit portfolio structure edits the fields, sort rules, folders and per-file values.

An attachment-safety preflight profile flags unsafe names, executable content and integrity failures; macros and automatic folders can run it, or remove attachments, unattended.

In the Outline panel (Alt+2), right-click to add a bookmark or a child bookmark for the current page, rename (F2), delete, move up or down, point one at the current page, or delete them all; drag bookmarks and their children into order.

Create bookmarks from headings proposes bookmarks from the document's heading tags, or from large, bold or numbered text, leaving out running headers, footers and page numbers. Set the minimum size, maximum length, depth and an optional title pattern, then edit titles and levels in the review table before adding the ones you tick. A document with no text asks you to run OCR first.

Insert table of contents adds clickable contents pages at the front, built from the bookmarks, with a title and a maximum depth from 1 to 6. Navigation audit checks links, bookmarks and destinations and offers to remove links with unsafe or invalid web addresses or with destinations that cannot be found. Bookmark data exports and imports the bookmark tree as JSON, optionally replacing the existing bookmarks.

Edit page labels defines label ranges, each with a first page, a style (decimal, Roman numerals, letters, or a prefix alone), an optional prefix and a start value, so front matter can run i, ii, iii while the body starts at 1.

Initial view settings decide how any viewer opens the file: page layout, which navigation panel shows, the opening page and zoom (Fit Page, Fit Width, Fit Height, Actual Size or a percentage), and whether the viewer hides its toolbar, menu bar or window controls, fits and centers its window, shows the document title, or picks the print tray from the page size.

Seven jobs: N-up layout, Booklet, Step and repeat, Cut and stack, Manual page sequence, Poster tiles and Continuous Bates batch. The layout dialog sets columns and rows, sheet size, margin, gutter, inner sheet offset (creep), signature size, a typed page sequence with 0 for a blank, tile overlap, crop, registration and fold marks, color bars and sheet information, rotation to fit and the binding edge. The result opens in a preview before it is saved as name-layout.pdf.

Continuous Bates batch takes several PDFs, lets you order them, and stamps one unbroken sequence across all of them with a prefix, suffix, start number, minimum digits and position; a review shows each file's first and last number before anything is written, and output names may not collide with inputs. From a script, booklet, nup, number-pages and bates do the same without a window.

Automate

Four tasks walk through a common job step by step and always save a copy, leaving the original and your current edits alone. Prepare for email optimizes without lowering image quality, optionally flattens form fields, and shows the size before and after. Clean up a scan makes the scan searchable in your OCR language and optimizes it. Remove sensitive information reviews text matches and existing redaction marks, asks before any page is turned into an image, and shows the saved copy. Create a fillable form reviews detected fields and their names and adds only the ones you accept.

The output must be a different PDF, and signed or read-only documents are not accepted. The email and scan tasks can be saved as macros.

A macro is an ordered list of steps, saved by name. Start from one of four starters, Archival (OCR, Validate, Save), Sharing (Optimize, Flatten, Validate, Save), Scanning (OCR, Optimize, Save) or Privacy (Redact, Flatten, Validate, Save), then add, remove, reorder and edit steps. There are 31 step types, among them OCR, Optimize, Convert color, Resize pages, Redact, Watermark, Number pages, Data merge, the imposition layouts, bookmarks and table of contents, layer, portfolio and attachment edits, Validate, Export, Rename and Save. Macros import and export as .json files that carry no code.

Run on current document previews the steps, input, output and any overwrite before it runs. Run on selected PDFs takes a list of files, lets you order them and approve the output names, and ends with a per-file report. A Redact step asks for the words to redact and includes the marks made with the Redact tool. Macros are available with no document open. From a script, macro in.pdf starter:privacy out.pdf or a saved name; macro --list shows what is saved.

Automatic folders watch an input folder and run a saved macro on every PDF that lands there, writing the result to an output folder (the two must differ) while KillerPDF is open, including from the system tray. Set a file name filter (*.pdf by default; subfolders are not scanned) and pick the macro. Originals and existing outputs are kept.

Save and start, Pause, Resume and Retry failed files sit on the dialog with a live status per file (Waiting, Processing, Completed, Needs attention), and Pause when a file fails stops the queue at the first problem. Limits: PDFs up to 64 MB, 2,000 queued files, and a file that needs a password or a step that needs input is set aside for a manual run. New copies do not keep existing digital signatures, OCR models must be installed before you start, and editing the macro later does not change a running task.

Data merge fills the open PDF form once per record from a CSV, JSON or XLSX file and writes one PDF per record into a folder you choose. Columns map to fields of the same name automatically, or to {{placeholder}} text in the page; the mapping dialog sets each value as Text, Number or Date with a format and default, adds an include-when condition, places images from a column of file paths, and loads or saves the whole mapping as a JSON profile.

Choose Editable output (fields stay fillable) or Flattened. A review lists the mappings and destination files first, existing outputs ask before they are replaced, nothing can overwrite the template, and one failing record does not stop the rest. From a script, data-merge template.pdf data.csv outDir\ --flatten.

Command line

In an installed copy, run killerpdf from any new terminal. It waits for the result and returns the exit code. Run KillerPDF-Portable.exe directly, or use the installed KillerPDF.App.exe under %LOCALAPPDATA%\Programs\KillerPDF or %ProgramFiles%\KillerPDF.

Exit codes are the scripting contract: 0 success, 1 the operation failed, 2 bad usage, and 3 from the report commands (preflight, accessibility, navigation-audit, compare-structure) when the file was read and findings were reported. Check $LASTEXITCODE in PowerShell.

.\KillerPDF.App.exe --help prints the full reference; --version prints the version. Because KillerPDF is a windowed app, console text can interleave with your prompt - that is normal.

Page ranges are written like 1-3,5,9-12. Encrypted inputs are unlocked automatically where possible; pass --password <p> on the commands that list it.

.\KillerPDF.App.exe --merge out.pdf a.pdf b.pdf scan.jpg merges PDFs and images into one file, in the order given.

Merges rewrite named-destination links, so internal cross-references and TOC links keep working in the combined file.

.\KillerPDF.App.exe --extract-pages in.pdf 1-3,5 out.pdf pulls a page range into a new PDF.

.\KillerPDF.App.exe --split in.pdf pages\ writes one PDF per page, named in-page-001.pdf and so on.

--every n, --parts n, --bookmarks level or --max-size 5MB choose a different rule (one at a time), --name sets a template with {name}, {index}, {first}, {last} and {title}, and --overwrite replaces existing parts, never the source.

.\KillerPDF.App.exe --decrypt locked.pdf open.pdf removes encryption losslessly (bookmarks and forms survive). Add --password <p> if the file needs a password to open.

.\KillerPDF.App.exe --flatten in.pdf flat.pdf rasterizes every page into an uneditable PDF, the same 150 DPI output as Save Flattened in the app. --dpi overrides the resolution.

.\KillerPDF.App.exe --to-image in.pdf imgs\ --dpi 300 --format jpg renders pages to PNG (default) or JPG files. --pages limits the range.

Rotated pages come out in their viewed orientation in all three.

.\KillerPDF.App.exe --print in.pdf --printer "HP LaserJet" --pages 1-4 --copies 2 prints silently at 300 DPI, fit-scaled and centered. Without --printer it uses the Windows default; a partial printer name matches too, and a bad name lists what is available.

.\KillerPDF.App.exe --ocr scan.pdf searchable.pdf --lang eng lays an invisible, selectable text layer over a scan - the same on-device OCR as the app, nothing uploaded.

Language models (eng, spa, fra, deu, ces, hun, ita, jpn, kaz, pol, rus, slv, tur, ben, nor, por, ukr, vie, chi_sim, chi_tra) download automatically on first use and remain cached.

.\KillerPDF.App.exe --batch-resave inDir\ outDir\ --log report.csv resaves a file or a whole folder tree through the standard open/save pipeline, mirroring the folder structure.

Each file reports OK, SKIP (with a reason), or FAIL, to the console and the optional CSV log.

This powers KillerPDF's standards-conformance testing: resave a validation corpus, run veraPDF over input and output, and diff the results with validation/Compare-VeraPDF.ps1 from the repo. The claim it verifies: a KillerPDF save does not degrade PDF/A conformance.

Two spellings work for every command: the bare word (killerpdf merge ...) and the older --merge flag. There are 71 commands; killerpdf help lists them all with their options. --json turns a report into machine-readable output, and --allow-incomplete keeps a page whose content cannot be drawn exactly instead of failing to-image, flatten or print.

Pages: rotate-pages, delete-pages, move-pages, insert-blank, duplicate-page, reverse-pages, fix-orientation, straighten, divide-spreads, rasterize-region, crop. Documents: optimize, number-pages, bates, booklet, nup, toc, page-labels, auto-bookmarks, set-bookmarks, set-metadata, add-comment, delete-comments, initial-view, repair-links, set-layer, portfolio-view, add-attachment, edit-attachment, replace-text. Security: protect, decrypt, sign, redact. Convert and forms: export, convert-office, scan, scan-to-text, data-merge, export-form-data, import-form-data, recognize-fields, xfa-to-acroform, flatten-forms. Reports: document-info, search-text, preflight, accessibility, attachments, print-production, signatures, layers, portfolio, comments, measurements, separations, compare-structure, navigation-audit. Automation: macro, batch-resave, batch-render.

--secrets-stdin reads password, user-password, owner-password and pfx-password as one JSON object from standard input, so no password sits in a process list or shell history. Edits made from the command line honor the permissions of a PDF opened with its user password; among the edit commands, only fix-orientation and straighten take --password.

Every command with all of its options, exactly as killerpdf help prints it.

KillerPDF " + AppVersion.Display + " command line usage
Existing --command forms stay compatible.

  killerpdf <file.pdf>                                    open in the app
  killerpdf version | -v                                print version
  killerpdf help | -h | /?                              this text
  killerpdf verify | /verify                            verify every installed payload file

  killerpdf merge <out.pdf> <in1> <in2> ...        merge PDFs (and images) into one PDF
  killerpdf extract-pages <in.pdf> <pages> <out.pdf>
                                           pull pages into a new PDF (pages like 1-3,5,9-12)
  killerpdf split <in.pdf> <outDir>                write one PDF per page
                                           [--every <n>] fixed page count per part
                                           [--parts <n>] equal parts
                                           [--bookmarks <level>] a part per bookmark at that level
                                           [--max-size <n[KB|MB]>] grow parts up to a size budget
                                           [--name <template>] {name} {index} {first} {last} {title}
                                           [--overwrite] replace existing parts, never the source
  killerpdf optimize <in.pdf> <out.pdf> [--strip <list>] [--images <dpi>] [--jpeg-quality <n>]
                                           [--invalidate-signatures] [--report] [--password <p>]
                                           reduce file size; --images resamples images drawn
                                           above 1.5 times that resolution; strip takes any of metadata,
                                           attachments, javascript, comments, thumbnails,
                                           bookmarks, forms, xfa, openaction, layers;
                                           a signed file or one with Reader usage rights is refused
                                           unless --invalidate-signatures gives those up
  killerpdf number-pages <in.pdf> <out.pdf> [--template <text>] [--pages <range>]
                                           [--edge header|footer] [--align left|center|right]
                                           [--number-format decimal|upper-roman|lower-roman|
                                           upper-letters|lower-letters] [--font-size <n>]
                                           tokens: {page} {pages} {label} {filename} {title}
                                           {author} {date}
  killerpdf bates <outDir> <in1.pdf> [in2.pdf ...] [--start <n>] [--digits <n>]
                                           [--prefix <text>] [--suffix <text>] [--edge ...]
                                           [--align ...] [--font-size <n>]
                                           stamp one continuous Bates sequence across files
  killerpdf booklet <in.pdf> <out.pdf> [--sheet <name|WxH>] [--margin <n>] [--gutter <n>]
                                           [--creep <n>] [--binding long|short] [--marks]
                                           two-up saddle-stitch imposition
  killerpdf nup <in.pdf> <out.pdf> --grid <cols>x<rows> [--sheet <name|WxH>] [--margin <n>]
                                           [--gutter <n>] [--marks]   place several pages per sheet
  killerpdf auto-bookmarks <in.pdf> <out.pdf> [--min-size <pt>] [--depth <n>] [--pattern <regex>]
                                           build an outline from detected headings; exit 3 when no headings are found
  killerpdf preflight <in.pdf> [--profile general|attachments|print|<profile.json>]
                                           [--json] [--password <p>]   exit 3 when findings
  killerpdf accessibility <in.pdf> [--json]        report accessibility findings; exit 3 when found
  killerpdf attachments <in.pdf> [<outDir>] [--json] [--password <p>]
                                           list embedded files, or extract them to a folder
  killerpdf decrypt <in.pdf> <out.pdf> [--password <p>]
                                           remove encryption (lossless when possible); a PDF that
                                           declares a limit takes the owner password
  killerpdf to-image <in.pdf> <outDir> [--dpi <n>] [--format png|jpg] [--pages <range>] [--transparent] [--overwrite]
                                           render pages to images (default 150 dpi, png;
                                           background composites to white unless --transparent, png only)
  killerpdf flatten <in.pdf> <out.pdf> [--dpi <n>] [--color-mode color|grayscale|black-white]
                                           [--threshold <0-255>] [--compression lossless|jpeg]
                                           [--jpeg-quality <1-100>] [--scanned-look all|tilt,paper,grain,soft-focus,shadow]
                                           rasterize into an uneditable PDF, optionally looking scanned
  killerpdf print <in.pdf> [--printer <name>] [--pages <range>] [--copies <n>]
                                           [--duplex none|long|short] [--reverse]
                                           print silently (default printer if none named)
  --password <p> works on preflight, decrypt, to-image, flatten, print, ocr, scan-to-text, fix-orientation,
                                           straighten, separations, attachments, export, comments, measurements,
                                           recognize-fields, macro and batch-render;
                                           other commands read a PDF that opens with no password. On a PDF with
                                           limits, new PDFs and page images need printing and copying allowed,
                                           text and data need copying allowed, an edit-forbidden PDF gives up
                                           nothing, and the owner password lifts all of that
  killerpdf scan <out.pdf> [--scanner <name>] [--show-settings]
                                           scan through a TWAIN scanner into a PDF; --scan --list shows scanners
  killerpdf ocr <in.pdf> <out.pdf> [--lang <code>] add an invisible searchable text layer (default eng;
                                           other languages download on first use)
  killerpdf scan-to-text <in.pdf> <out.pdf> [--lang <code>] [--review <folder>] [--keep-scanned <file>]
                                           turn scanned pages into real text in a matching typeface;
                                           --review writes each word as scanned beside it as text
  killerpdf rotate-pages <in.pdf> <pages> <degrees> <out.pdf>
                                           rotate selected pages by 90, 180, or 270 degrees
  killerpdf delete-pages <in.pdf> <pages> <out.pdf> remove selected pages
  killerpdf move-pages <in.pdf> <pages> <position> <out.pdf>
                                           move pages before a one-based position
  killerpdf insert-blank <in.pdf> <position> <out.pdf> [--width <pt>] [--height <pt>]
                                           insert a blank page before a one-based position
  killerpdf duplicate-page <in.pdf> <page> <out.pdf> duplicate one page
  killerpdf reverse-pages <in.pdf> <out.pdf> [--pages <range>]
                                           reverse the order of all or the selected pages
  killerpdf fix-orientation <in.pdf> <out.pdf> [--pages <range>] [--lang <code>]
                                           turn pages to read upright (OCR reads scans)
  killerpdf straighten <in.pdf> <out.pdf> [--pages <range>]
                                           level tilted scans that have no text layer
  killerpdf divide-spreads <in.pdf> <out.pdf> [--pages <range>] [--direction vertical|horizontal]
                                           [--position <0.1-0.9>]   split two-page spreads
  killerpdf rasterize-region <in.pdf> <page> <left,bottom,right,top> <out.pdf> [--dpi <n>]
                                           turn one box (points, unrotated page) into an image
  killerpdf print-production <in.pdf> [--json]    page boxes, inks and output intents
  killerpdf signatures <in.pdf> [--json]          each signature's signer, time, trust and changes
  killerpdf layers <in.pdf> [--json]              list layers and their visibility and locks
  killerpdf set-layer <in.pdf> <out.pdf> <layer|#object> [--name <new>] [--visible on|off] [--locked on|off]
  killerpdf portfolio <in.pdf> [--json]           portfolio presentation, fields and folders
  killerpdf portfolio-view <in.pdf> <out.pdf> (--view details|tile|hidden [--initial <name>] | --clear)
  killerpdf add-attachment <in.pdf> <out.pdf> <file> [<file> ...] [--description <text>]
                                           [--relationship data|source|alternative|supplement|unspecified]
  killerpdf edit-attachment <in.pdf> <out.pdf> <name> [--rename <new>] [--description <text>]
                                           [--mime <type>] [--relationship <name>] [--remove]
  killerpdf comments <in.pdf> [--json] [--password <p>]
                                           list review comments and their replies
  killerpdf measurements <in.pdf> [--json | --csv] [--password <p>]
                                           report the saved measurements
  killerpdf separations <in.pdf> [<outDir>] [--pages <range>] [--dpi <n>] [--json] [--overwrite]
                                           list inks, or write each page's plates as images
  killerpdf compare-structure <original.pdf> <changed.pdf> [--json]
                                           compare content, resources and geometry; exit 3 when they differ
  killerpdf navigation-audit <in.pdf> [--json]    check links, bookmarks and destinations; exit 3 when found
  killerpdf repair-links <in.pdf> <out.pdf> [--unsafe] [--unresolved]
                                           remove unsafe or broken links (both by default)
  killerpdf toc <in.pdf> <out.pdf> [--title <text>] [--depth <1-6>]
                                           insert clickable contents pages built from the bookmarks
  killerpdf page-labels <in.pdf> <out.pdf> <page:style[:prefix[:start]],...>
                                           set page-label ranges, such as 1:lower-roman,5:decimal
  killerpdf initial-view <in.pdf> <out.pdf> [--page <n>] [--zoom fit-page|fit-width|fit-height|actual|<percent>]
                                           [--layout <name>] [--panel <name>] [--hide-toolbar on|off]
                                           [--hide-menu on|off] [--hide-window-ui on|off] [--fit-window on|off]
                                           [--center-window on|off] [--show-title on|off]
  killerpdf redact <in.pdf> <out.pdf> [--text <phrase>] [--terms <file>] [--regex <pattern>]
                                           [--find email,phone,ssn,card,iban] [--whole-pages <range>] [--marked]
                                           [--match-case] [--fill <color>] [--overlay <text>] [--rasterize]
                                           [--sanitize all|<list>] [--dry-run]   permanently remove content;
                                           exit 3 and no output when pages could not be read
  killerpdf protect <in.pdf> <out.pdf> [--user-password <p>] [--owner-password <p>] [--allow print,copy,edit]
                                           [--recipients <cert.cer>,...] [--invalidate-signatures]   AES-256 copy
  killerpdf sign <in.pdf> <out.pdf> (--pfx <file> [--pfx-password <p>] | --cert <thumbprint or name>)
                                           [--reason <text>] [--location <text>] [--contact <text>]
                                           [--timestamp] [--timestamp-server <url>] [--appearance <page>[:<corner>]]
                                           [--appearance-text <text>] [--width <pt>] [--height <pt>] [--font-size <pt>]
                                           add a digital signature, optionally timestamped and visible
  killerpdf export <in.pdf> <out.docx|.xlsx|.pptx|.html|.md|.txt|.json> [--pages <range>] [--report] [--password <p>]
                                           export to Office, web and text formats
  killerpdf convert-office <in.docx|.xlsx|.doc|.xls> <out.pdf>
                                           convert a Word or Excel file to PDF
  killerpdf data-merge <template.pdf> <data.csv|.json|.xlsx> <outDir> [--name <file name>] [--flatten] [--overwrite]
                                           fill one copy of the form per record
  killerpdf replace-text <in.pdf> <out.pdf> <find> <replace> [--match-case] [--whole-word]
                                           rewrite matching lines in their own fonts
  killerpdf export-form-data <in.pdf> <out.fdf|.xfdf|.json> [--no-comments]
  killerpdf import-form-data <in.pdf> <data.fdf|.xfdf> <out.pdf> [--flatten]
  killerpdf recognize-fields <in.pdf> [<out.pdf>] [--json] [--password <p>]
                                           find form fields; with an output, add the text fields and check boxes
  killerpdf xfa-to-acroform <in.pdf> <out.pdf> [--flatten]   convert an XFA form to standard fields
  killerpdf flatten-forms <in.pdf> <out.pdf>      turn form fields into page content
  killerpdf set-metadata <in.pdf> <out.pdf> [--title <t>] [--author <a>] [--subject <s>] [--keywords <k>] [--creator <c>]
                                           change document properties; fields not named stay as they are
  killerpdf set-bookmarks <in.pdf> <out.pdf> <bookmarks.json> [--replace]
                                           import bookmarks from a bookmark data file
  killerpdf add-comment <in.pdf> <out.pdf> --page <n> --text <t> [--x <pt>] [--y <pt>] [--author <name>]
  killerpdf delete-comments <in.pdf> <out.pdf> [--pages <range>]
  killerpdf crop <in.pdf> <out.pdf> --box <x,y,w,h> [--pages <range>] [--media]   or --clear
                                           crop pages in PDF points; --media resizes the page itself
  killerpdf macro <in.pdf> <saved name | macro.json | starter:<name>> <out.pdf> [--lang <code>]
                                           [--text <phrase>] [--terms <file>] [--rasterize] [--json] [--password <p>]
                                           run a macro; --macro --list shows the saved ones
  killerpdf document-info <in.pdf>                 print document details as JSON
  killerpdf search-text <in.pdf> <query>            print page hits as JSON; exit 3 when pages
                                           could not be read (listed as unreadablePages)
  killerpdf batch-resave <in> <out> [--log <f.csv>] [--quiet]
                                           resave a file or tree through the standard
                                           open/save pipeline (validation harness)
  killerpdf batch-render <in> <outDir> [--size <px>] [--pages <n>] [--parallel <n>] [--log <f.csv>] [--quiet] [--password <p>]
                                           render the first pages of a file or tree to PNG
                                           with per-page timings (render benchmark)
                                           --allow-incomplete also writes pages with omitted
                                           content (release-gate comparisons)
  --secrets-stdin                          read password, user-password, owner-password and
                                           pfx-password from standard input as one JSON object
                                           instead of the command line, where other programs can see them
  --allow-incomplete                       keep a page whose content cannot be drawn exactly instead of
                                           failing: to-image, flatten and print name it; batch-render
                                           marks it INCOMPLETE and counts it, keeping its log row OK

Exit codes: 0 success, 1 operation failed, 2 bad usage, 3 findings or nothing to do (where noted).
Runs headless and works while the KillerPDF window is open.

Keyboard shortcuts

At the bottom of the shortcut list, you can turn off all application keyboard shortcuts. Ctrl+Shift+K always works to turn them on or off, even when the others are disabled.

Ctrl+R rotates selected pages 90° clockwise. Ctrl+Shift+R rotates them 90° counterclockwise.

Customize Shortcuts... in the footer of the F1 overlay remaps a key: click it, press the new one, Esc cancels, and Reset or Reset All restores the defaults. Letters, the number row, F1 to F12, Delete and Insert can be targets; F2 and Ctrl+Shift+K cannot move. Search Tools and the menus run a command whatever key it sits on.

Hold Ctrl, Shift or Alt to preview that layer - hover a lit key for its action
 

FILE

Alt+Shift+TExport table
Alt+Shift+EExport Pages as Images...
Alt+Shift+ZReduce File Size...
Alt+Shift+CCompress to ZIP
Alt+Shift+FFlatten
Alt+Shift+BMerge PDFs
Alt+Shift+XExtract Page(s)
Ctrl+OOpen
Ctrl+SSave
Ctrl+Shift+SSave As
Ctrl+WClose file
Ctrl+Shift+WClose other tabs
Ctrl+Shift+QClose all
Ctrl+QQuit
Ctrl+NNew blank document
Ctrl+PPrint
Ctrl+D / F4Document info
Shift+F4Show current file size
Ctrl+Shift+EExport Document...
Ctrl+Shift+PProtect Document

TOOLS

Alt+Shift+1Distance
Alt+Shift+2Perimeter
Alt+Shift+3Area
Alt+Shift+4Angle
Alt+Shift+5Set the drawing scale for this page
VSelect
TText
HHighlight
L (or U)Line
OShapes
Shift+ONext shape type
DDraw
IAdd Image
GSignature
CCrop
RTransform
Ctrl+RRotate Page CW
Ctrl+Shift+RRotate Page CCW
SStamp Pages
FFillable text field
EColor Correction
MMeasure
Shift+MNext measurement type
XRedact

EDITING

Alt+Shift+PEdit paragraph
Ctrl+ZUndo
Ctrl+YRedo
Ctrl+Shift+ZRedo
Ctrl+CCopy selected text
Ctrl+VPaste image / text
Ctrl+B / I / UBold / italic / underline (text box)
DeleteDelete selected annotation
F2Rename
Enter / EscConfirm / cancel text or crop
Menu / Shift+F10Context menu at selection

HELP

F1 / Ctrl+?This shortcut list
F12About dialog
Ctrl+Shift+KToggle keyboard shortcuts

NAVIGATION

Alt+1Pages
Alt+2Outline
Alt+3Comments and measurements
Alt+4Attachments
Alt+5Layers
Alt+6Signatures
← / → or PgUp/PgDnPrevious / next page
Home / EndFirst / last page
Alt+← / Alt+→Back / forward (jump history)
↑ / ↓Scroll (flips page at the edges)
Ctrl+ScrollZoom in / out (cursor-anchored)
Ctrl+= / Ctrl+-Zoom in / out
Ctrl+0Reset zoom to 100%
Ctrl+1 / 2 / 3Actual size / fit width / fit page
Middle dragPan view
Space + dragPan view
F9Toggle sidebar
Shift+F9Move sidebar to the next side
Ctrl+TabNext tab (Shift: previous)
Ctrl+Shift+TabPrevious tab
Ctrl+Shift+NMove to New Window

VIEW

F5Continuous
F6Single Page
F7Two Page
BBook layout
F8Grid
F10Split pane: two documents side by side
F11 / EscFull screen
Alt+MHide toolbar
NInvert document colors
Shift+NInvert images too
Ctrl+Shift+= / - / 0Zoom the whole app (accessibility)
Wheel on logoZoom the whole app (accessibility)
Alt+Shift+GFilm Grain
Ctrl+Shift+1-6Toolbar appearance

OCR

Ctrl+Shift+OOCR Page (Copy Text)
Ctrl+Shift+IOCR Region...
Ctrl+Shift+TConvert Scan to Text...

SEARCH & SELECT

Ctrl+KSearch Tools
Ctrl+FFind Text
Ctrl+HFind and replace
F3 / Shift+F3Next / previous result
Enter / Shift+EnterNext / previous result
Ctrl+ASelect all text on page
Shift+ClickAdd to selection

DOCUMENT TOOLS

Ctrl+Shift+GDigital Signature...
Alt+Shift+VCompare PDFs
Alt+Shift+WAutomatic folders
Alt+Shift+AAdd Blank Page
Alt+Shift+RReverse Page Order
Alt+Shift+OFix Page Orientation
Alt+Shift+SStraighten Scanned Pages
Alt+Shift+DDivide Spreads...
Alt+Shift+LRasterize Region...
Ctrl+Shift+DDocument tools
Ctrl+Shift+D, PPreflight report
Ctrl+Shift+D, RPrint production report
Ctrl+Shift+D, SSeparation preview report
Ctrl+Shift+D, AAccessibility report
Ctrl+Shift+D, WSignatures report
Ctrl+Shift+D, LLayers report
Ctrl+Shift+D, EEdit layers
Ctrl+Shift+D, FPortfolio report
Ctrl+Shift+D, OEdit portfolio
Ctrl+Shift+D, UEdit portfolio structure
Ctrl+Shift+D, TEdit attachments
Ctrl+Shift+D, KComments
Ctrl+Shift+D, YMeasurements
Ctrl+Shift+D, NNavigation audit
Ctrl+Shift+D, BCreate bookmarks from headings
Ctrl+Shift+D, GEdit page labels
Ctrl+Shift+D, VInitial view settings
Ctrl+Shift+D, CStructural comparison report
Ctrl+Shift+D, MMacros
Ctrl+Shift+D, DData merge
Ctrl+Shift+D, IInsert table of contents
Ctrl+Shift+D, HForm data
Ctrl+Shift+D, JBookmark data
Ctrl+Shift+D, QProduction layouts and Bates batches