The four-tool mental model

Job 1 — Open and read a PDF, fill form fields, add annotations, sign. Use Okular. It’s the xdg-open default on KDE / Kubuntu / Linux Mint / Tuxedo, ships in every distro’s main repo, and was designed specifically for the “review a PDF” workflow.

Job 2 — Merge, split, rotate, crop, rearrange pages. Use PDF Arranger. It’s a 200-MB-ish Python app that does page-level manipulation with drag-and-drop.

Job 3 — Edit text in the PDF body itself, change a typo in an existing PDF. Use LibreOffice Draw. Opening a PDF in Draw converts the page into editable vector objects and text boxes; you can fix typos, swap images, add text boxes, then export back to PDF. It has limitations (it’s not really editing the PDF — it’s re-importing), but for one-off typo fixes it’s the only free tool that does it.

Job 4 — Deep edits with OCR, fillable-form creation, JavaScript form logic, batch processing, cloud integration. Two paths: Master PDF Editor (commercial, Linux native, $52 Standard / $130 Pro perpetual license; first year of free upgrades included) OR Scribus (open source, lay out forms from scratch). For most people Master PDF Editor is the easier path.

That’s it. Four tools. The rest of this article breaks down each — what it actually does, what it doesn’t, what its known failure mode is, and how to install it on Debian 13 / Ubuntu 26.04.

Okular — the reader you’ll open the file with

What it is: KDE’s document viewer (KPart / okular package). Pre-installed on KDE / Kubuntu, one apt install away on GNOME. 1.x version line as of mid-2026 (Okular 25.x in Debian 13, 25.04 in Ubuntu 26.04 universe).

What it does well:

  • Render PDF / EPUB / DjVu / CBZ / FictionBook / images / Markdown preview, all in one app
  • Annotation layer: highlights, sticky notes, free-text drawings, shape annotations (rectangle, ellipse, arrow, polygon)
  • Form field filling for AcroForm PDFs — toggle View → Show Forms and the input fields become typeable
  • Digital signature via PKCS#11 smart cards or local X.509 certs (Tools → Sign Document)
  • Bookmark and outline navigation
  • Multi-document tab interface
  • Sync annotations across devices if you use the Okular native sync via kde: URIs (limited, but available)

What it doesn’t do:

  • Edit body text. Okular has no “Edit Text” mode for PDFs. The annotation layer is the only mutation path; that’s a feature for reviewers, not for document authors.
  • OCR scanned PDFs. You can display them, but you can’t search or copy text from them without external OCR first.

Installation:

Bash
sudo apt install okular            # Debian / Ubuntu
# Or, if you want the latest:
sudo apt install okular-extra-backends  # adds CHM / Mobipocket / others

Known issue: Pdf-poppler backend has occasional rendering glitches on PDFs with custom embedded fonts (especially legacy Acrobat 5-era files). Switching to the older poppler-qt4 backend in Settings → Configure Okular → General fixes most. Worth knowing if you’re staring at a page where some glyphs are missing.

The apt-cached version vs the AppImage: Flatpak and AppImage editions get new features ~2-4 weeks earlier. For review work, the apt version is fine.

PDF Arranger — the page-level toolkit

What it is: Python + GTK4 + Poppler. Originally forked from PDF-Shuffler in 2018 when that project went unmaintained. Active development through 2026. The current version (1.7.x as of 2026-Q2) is on GitHub at github.com/pdfarranger/pdfarranger.

What it does well:

  • Drag-and-drop page reordering across multiple PDFs
  • Merge N PDFs into one, or split one PDF into N (every page, every odd page, by page ranges)
  • Rotate pages (90° / 180° / 270°, in batch)
  • Crop whitespace from each page (auto-detect or manual)
  • Insert blank pages at arbitrary positions
  • Delete pages
  • Duplicate pages (clone pages)
  • Save back to PDF without re-rendering individual pages (preserves text layer exactly)
  • Export specific pages as images (PNG / JPEG / TIFF) at any DPI
  • Export the modified PDF without the original encryption / metadata

What it doesn’t do:

  • Edit a single character of text anywhere on the page
  • Forms
  • Annotations (annotations pass through to the output untouched)
  • OCR

Installation:

Bash
sudo apt install pdfarranger
# 1.7+ ships in Debian 13 / Ubuntu 26.04 main
# For the absolute latest:
flatpak install flathub com.github.jeromerobert.pdfarranger

Known issue: Drag-and-drop from Nautilus into PDF Arranger’s window works on GNOME 47+, fails silently on GNOME 46 and earlier. There’s a workaround (drag onto the “Open File” button), but it’s a 2.x-era regression that hasn’t been fixed. On 26.04’s GNOME 50 this is a non-issue.

When to reach for it: every time a colleague sends you “the print version is 12 pages, can you give me just pages 3 to 7 as a separate PDF?” — that’s PDF Arranger’s wheelhouse.

LibreOffice Draw — the only free text editor

What it is: LibreOffice’s vector graphics module, repurposed as a PDF editor. Draw has been able to import PDF since LibreOffice 4.x (2014-ish); the workflow stabilized around LibreOffice 6.x and is mature now.

What it does well:

  • Open a PDF, edit text in place (each text block becomes a text frame you can type into directly)
  • Replace images and graphics with new ones (drag from file manager)
  • Add text boxes, shapes, lines, callouts anywhere
  • Edit the underlying vector objects directly — paths, fills, strokes
  • Re-export to PDF (File → Export As → PDF) with full control over PDF/A conformance, encryption, compression
  • Batch operations through macros (Tools → Macros)
  • Pre-installed on every Debian / Ubuntu desktop variant

What it doesn’t do:

  • Edit text in PDFs that are scanned (raster) — for those you need OCR first (use Stirling PDF or ocrmypdf from apt install ocrmypdf)
  • Preserve complex layouts — multi-column flow, custom fonts with kerning tables, large inline images can shift. The export round-trip is lossy on these.
  • Form creation — Draw can read forms but creating new fillable ones needs Scribus or Master PDF Editor.
  • Real-time collaboration
  • Cloud save integration

Installation: sudo apt install libreoffice-draw — but on most distros it’s pulled in already by libreoffice. Or get the Flatpak: flatpak install flathub org.libreoffice.LibreOffice.

The “format preservation” trap: Every time Draw opens a PDF, it converts the PDF content into ODF-internal representations. Even if you make zero edits and just re-export, the new PDF is not bit-identical to the original. Characters you’ve not even looked at get re-rasterized, fonts might re-embed, links might change. So Draw is fine for “fix the heading typo and re-export” — it’s not fine for “rebrand this 80-page spec without touching the embedded fonts.”

Known issue: If the PDF was exported from MS Word with auto-tracked changes, Draw’s text-frame editor has been known to mishandle ZWJ (zero-width joiner) characters in CJK text. Most likely you’ll never encounter this; if you do, run the PDF through qpdf --qdf first to linearize and try again.

When to reach for it: “There is a typo on page 5 of the PDF I just downloaded from a partner, fix it.”

Master PDF Editor — the practical Acrobat replacement

What it is: Code Industry’s commercial Linux-native PDF editor. Three editions:

  • Free / Open Source edition (historical): Up through v5, there was a community edition that was free for non-commercial use. As of 2026, the project no longer ships a free edition; the closest you can do is a 30-day trial.
  • Standard (commercial, $52/seat perpetual, includes first year of upgrades): Annotation, form filling, digital signatures, basic page management.
  • Pro (commercial, $130/seat perpetual, includes first year of upgrades): All Standard features + OCR (50+ languages), content editing, batch processing, PDF/A and PDF/X compliance.

What it does well (Standard + Pro):

  • Native Linux app (Qt-based, fast on Wayland)
  • Full AcroForm and XFA form editing — create fillable PDFs, add field validation, save back
  • Annotation layer with shape tools, stamps, free-draw, image insertion, drawing markup
  • Digital signature flow with PKCS#11, USB tokens, .pfx files
  • Encryption / redaction (Pro): sanitized output where redacted areas are actually removed (not just covered) — required for FOIA / GDPR / healthcare compliance
  • Multi-document tabs, bookmarks, outline, page thumbnails
  • File watcher: edits a PDF and the change is saved immediately
  • Export to PDF/A-1b / 2b, PDF/X-3, image, plain text

What it doesn’t do:

  • Real-time collaboration (no live multi-user)
  • Cloud save (it can use local cloud-mounts via GVFS but doesn’t talk to Google Drive directly)
  • Speaks a proprietary format (output is industry-standard PDF)

Installation on Debian 13 / Ubuntu 26.04:

Bash
# Download .deb from https://code-industry.net/masterpdfeditor
sudo dpkg -i MasterPDFEditor-5.x.x.deb
sudo apt install -f           # resolve any missing dependencies
# Or the AppImage:
chmod +x MasterPDFEditor.AppImage
./MasterPDFEditor.AppImage

Known issue: Pro edition’s OCR engine is bundled (Tesseract 5.x under the hood); the Standard edition doesn’t ship OCR. If you mainly want OCR on scanned PDFs and prefer open source, ocrmypdf (APT package ocrmypdf, wraps Tesseract) does the same job — slower UI than Master PDF Editor’s Pro but no $130 fee.

When to reach for it: Real-world daily PDF work where you need form editing, signatures, and redaction in one Linux-native tool. It’s the closest thing to Acrobat Pro on Linux.

Self-hosted alternative: Stirling PDF

For a small company or a privacy-strict environment, Stirling PDF is the open-source answer. It’s a Java-based web app that runs as a Docker container and exposes a browser UI to merge / split / convert / OCR / redact / sign. About 60+ tools, all on-prem.

Bash
docker run -d --name stirling 
  -p 8080:8080 
  -v /opt/stirling-data:/usr/share/tesseract-ocr/share/tessdata 
  frooodle/s-pdf:latest

Then visit http://localhost:8080/. Tools include PDF → image, image → PDF, merge, split, rotate, compress, OCR (Tesseract-based, all languages), redact (real, sanitized), watermark, encrypt, sign, compare two PDFs, add page numbers. License is GPL-3.0. Container image size ~700 MB. Memory footprint ~250 MB running.

Use Stirling instead of one of the four if you have non-Linux users sharing PDFs (it works in any browser), if you have integration via API (POST /api/v1/...), or if you want OCR + redaction on the same dashboard. For an individual Linux desktop user, the four local tools are simpler.

Comparison table

Tool Content edit Annotate Fill forms Create forms OCR Merge/split Price Open source
Okular No Yes (full) Yes (read+fill) No No No Free GPL-2.0
PDF Arranger No Pass-through No No No Yes (drag-drop) Free GPL-3.0
LibreOffice Draw Yes (basic text) Limited Limited No No No Free MPL-2.0
Master PDF Editor (Standard) No Yes (full) Yes (full) Yes No Yes $52 No
Master PDF Editor (Pro) Yes Yes (full) Yes (full) Yes Yes (Tesseract) Yes + batch $130 No
Stirling PDF (Docker) No Yes Yes Limited Yes Yes Free GPL-3.0
Scribus Yes (vector layout) No Yes (creator) Yes (JavaScript forms) No No Free GPL-2.0

Picking one — by job

  • Annotation only → Okular. It’s already on your system.
  • Form fill → Okular. Toggle “Show Forms”.
  • Page reorder / merge / split → PDF Arranger. Drag and drop.
  • Edit text typo → LibreOffice Draw, accept the format shift.
  • Create fillable forms from scratch → Master PDF Editor Standard, or Scribus if you prefer open source and have time to learn it.
  • Redact for legal / healthcare → Master PDF Editor Pro (real redaction), or Stirling PDF (free, same end result).
  • OCR scanned PDFs → Stirling PDF (browser UI) OR ocrmypdf (CLI, free) OR Master PDF Editor Pro (Tesseract bundled).
  • Daily Acrobat-grade work → Master PDF Editor Pro. $130 perpetual, mostly worth it.

When none of these are enough

A few edge cases that don’t fit the four-tool model:

  • Real-time multi-user collaboration on PDFs. No Linux tool does this. Move the upstream source to .docx / .odt and collaborate there, export PDF for distribution. OR use Adobe Acrobat Pro web with the official Docker image (Linux compatibility is shaky), OR use a SaaS like Lumin or Foxit’s cloud offering.
  • Editing PDFs that were exported from MS Word with all the “Track Changes” markup embedded. Draw will get confused. qpdf --qdf file.pdf expanded.pdf first, then try Draw.
  • PDF forms that use XFA (the legacy form format some government PDFs use). Okular reads XFA poorly; Master PDF Editor reads it correctly. Adobe invented the XFA standard and abandoned it, but US federal tax forms and some US legal filings still use it.

What’s next

If you’ve assembled the four-tool kit and it works for you, the natural follow-up article is PDF command-line tricks — qpdf for merging and splitting without rendering, pdfgrep for text search across 1000s of files, ocrmypdf for batch OCR, pdftotext/pdftoppm for content extraction. That’s a single article covering ~6 CLI tools. Tell me in the comments.


Sources verified July 2026: github.com/pdfarranger/pdfarranger (1.7.x current release), okular package on Debian 13 / Ubuntu 26.04 (apt-cache show okular), docs.libreoffice.org Draw module documentation, code-industry.net/masterpdfeditor pricing page ($52 / $130 perpetual licenses in 2026 edition), onlyoffice.com April 2026 “Best Linux PDF editors” roundup for AI-OCR feature note.

Last modified: 2026年7月14日

Author

Comments

Write a Reply or Comment

Your email address will not be published.