Editor audit fixes, atomic saves, and streaming OCR
+
+
Editor: 13 audit fixes including encryption preservation on save (critical), delete_annot persistence, and signature key files written with mode 0o600.
+
Viewer: saveIncr now uses an atomic backup with restore-on-error (critical), notes are deleted with a bbox tiebreaker, and the Recents UI auto-refreshes after changes.
+
Performance: streaming OCR writer lowers peak memory, and an explicit overlay pixmap cache reduces redraw cost.
+
Conversions: PDF to DOCX is now layout-aware, with card rasterization and table reconstruction.
+
Reliability: 8 critical fixes, 19 HIGH fixes, and atomic writes added across 9 tools.
+
Translations: 12 new i18n keys covering the encrypt, forms, signature, and note flows.
lxml CVE PYSEC-2026-87: patched the XXE issue triggered when importing DOCX, PPTX, or EPUB content.
+
Updater (round 4): cancel reliability, signal lifecycle, and per-stage timeouts.
+
+
+
+
+
+ v1.13.13
+ May 31, 2026
+
+
Audit round 3 polish
+
+
Presentation: faster rendering path with fewer redundant repaints.
+
OCR: correct RGBA handling on transparent source pages.
+
Theme: leftover hard-coded colors now respect the active theme.
+
+
+
+
+
+ v1.13.12
+ May 24, 2026
+
+
macOS DMG fix and background task migration
+
+
macOS DMG: hdiutil now uses -size 1g, restoring reliable DMG creation in CI.
+
Background tasks: compress, OCR, convert (8 targets), and watermark migrated to the shared TaskRunner for cancellable, progress-reporting work.
+
+
+
+
+
+ v1.13.11
+ May 17, 2026
+
+
PyInstaller relaunch fix and Microsoft Store submission
+
+
PyInstaller relaunch: sanitise _PYI_* environment variables together and sweep _MEIPASS* on language change, preventing stale temp-folder handoff on --onefile Windows builds.
+
Microsoft Store: v1.13.11 submitted as the first iteration after the initial Store launch.
+
+
+
v1.13.10May 8, 2026
- Latest
Microsoft Store launch & language-change fix
-
Microsoft Store launch — PDFApps is now live on the Microsoft Store as a signed MSIX package, available in 8 interface languages (English, Portuguese, Spanish, French, German, Italian, Dutch, Chinese).
-
Language-change crash fix — switching language no longer triggers an Errno 2 crash on PyInstaller --onefile Windows builds. Root cause: PyInstaller 6.x uses _PYI_APPLICATION_HOME_DIR (not the legacy _MEIPASS2) for the parent→child temp-folder handoff; the relaunch was inheriting a stale value pointing at a folder the parent was about to delete. Fixed by sanitising the QProcessEnvironment before QProcess.startDetached.
-
Privacy policy page — added pdf-apps.com/privacy.html documenting the offline-only data posture (required for Store submissions declaring runFullTrust).
+
Microsoft Store launch - PDFApps is now live on the Microsoft Store as a signed MSIX package, available in 8 interface languages (English, Portuguese, Spanish, French, German, Italian, Dutch, Chinese).
+
Language-change crash fix - switching language no longer triggers an Errno 2 crash on PyInstaller --onefile Windows builds. Root cause: PyInstaller 6.x uses _PYI_APPLICATION_HOME_DIR (not the legacy _MEIPASS2) for the parent→child temp-folder handoff; the relaunch was inheriting a stale value pointing at a folder the parent was about to delete. Fixed by sanitising the QProcessEnvironment before QProcess.startDetached.
+
Privacy policy page - added pdf-apps.com/privacy.html documenting the offline-only data posture (required for Store submissions declaring runFullTrust).
@@ -86,14 +168,14 @@
Microsoft Store launch & language-change fix
Security audit, installer splash, and macOS DMG
-
macOS .app bundle in a .dmg — replaces the bare Unix binary zip. Mount, drag to Applications, done.
-
Skip update check on system-managed installs — AUR, Snap, Flatpak, apt, and rpm installs are now updated via the package manager instead of the in-app updater.
-
Security hardening — SHA256 checksum validation on update downloads, stricter ZIP/TAR extraction with symlink rejection, atomic config file writes, and 100k page limit in parse_pages.
-
9 bug fixes across tools — merge validates files exist, watermark guards empty PDFs, encrypt allows empty user password, OCR handles missing language packs, convert shows progress dialog, reorder no longer leaks file handles.
-
Translated installer splash — two-stage splash (static logo during extraction + animated "Loading…" text in the user's language).
macOS .app bundle in a .dmg - replaces the bare Unix binary zip. Mount, drag to Applications, done.
+
Skip update check on system-managed installs - AUR, Snap, Flatpak, apt, and rpm installs are now updated via the package manager instead of the in-app updater.
+
Security hardening - SHA256 checksum validation on update downloads, stricter ZIP/TAR extraction with symlink rejection, atomic config file writes, and 100k page limit in parse_pages.
+
9 bug fixes across tools - merge validates files exist, watermark guards empty PDFs, encrypt allows empty user password, OCR handles missing language packs, convert shows progress dialog, reorder no longer leaks file handles.
+
Translated installer splash - two-stage splash (static logo during extraction + animated "Loading…" text in the user's language).
The viewer uses continuous scroll — all pages are rendered as you scroll, so there's no "next page" button to click. Use the toolbar controls for jump-to-page, prev/next, and zoom.
+
The viewer uses continuous scroll: all pages are rendered as you scroll, so there's no "next page" button to click. Use the toolbar controls for jump-to-page, prev/next, and zoom.
Page input: type a page number and press Enter to jump there
Arrows ‹ ›: previous and next page
@@ -152,17 +152,30 @@
Search (Ctrl+F)
Bookmarks / TOC
-
PDFs that have a table of contents (also called bookmarks or outline) show a clickable side panel on the left of the viewer. Click any heading to jump to that page. The bookmark icon in the toolbar toggles the panel — it's hidden for PDFs without an outline.
+
PDFs that have a table of contents (also called bookmarks or outline) show a clickable side panel on the left of the viewer. Click any heading to jump to that page. The bookmark icon in the toolbar toggles the panel; it's hidden for PDFs without an outline.
Night reading mode
-
Click the moon icon in the toolbar to invert the colors of the rendered pages — white backgrounds become dark and black text becomes light. Useful for reading at night without strain. Night mode is independent from the app theme, so you can have a light app with night-mode PDFs or vice versa.
+
Click the moon icon in the toolbar to invert the colors of the rendered pages: white backgrounds become dark and black text becomes light. Useful for reading at night without strain. Night mode is independent from the app theme, so you can have a light app with night-mode PDFs or vice versa.
Presentation mode (F5)
Press F5 or click the TV icon to enter fullscreen presentation mode. The page fills the screen with a black background. Use arrow keys, Space, PgUp/PgDn, Home/End to navigate. Press Escape to exit.
+
+
Annotation tools
+
+
Tool
Shortcut
Description
+
+
Pen
P
Free draw on the current slide.
+
Highlighter
H
Translucent stroke for emphasis.
+
Eraser
E
Remove individual strokes you have drawn.
+
Laser pointer
L
Red dot that follows the cursor while held.
+
Clear page
C
Remove all annotations from the current slide.
+
+
+
A floating HUD at the bottom of the screen lets you switch tools and pick colors with the mouse. Annotations are session-only: they live until you exit presentation mode and are never written back to the PDF file.
@@ -175,9 +188,9 @@
Split & Merge
Compress
The Compress tool uses a 3-pass pipeline (Ghostscript → PyMuPDF → pikepdf) and keeps the smallest result. Three quality levels are available:
-
Extreme — 72 DPI, 40% quality, grayscale. Best for archival or email.
-
Recommended — 150 DPI, 65% quality. Good balance.
-
Low — 300 DPI, 80% quality. Minimal visible loss.
+
Extreme - 72 DPI, 40% quality, grayscale. Best for archival or email.
+
Recommended - 150 DPI, 65% quality. Good balance.
+
Low - 300 DPI, 80% quality. Minimal visible loss.
Ghostscript is optional but recommended for the "Extreme" level.
@@ -196,13 +209,13 @@
OCR (Text Recognition)
Convert
Convert PDF pages to:
-
PNG / JPG — choose the DPI (72, 150, or 300). One image per page.
-
DOCX — Word document with headings, images, and formatting preserved.
-
TXT — plain text extraction.
-
PPTX — PowerPoint presentation with one slide per page (page rendered as image).
-
XLSX — Excel workbook with one sheet per page, text blocks as rows.
-
HTML — HTML file with semantic headings and styled text.
-
EPUB — E-book with one chapter per page for readers and Kindle.
+
PNG / JPG - choose the DPI (72, 150, or 300). One image per page.
+
DOCX - Word document with headings, images, and formatting preserved.
+
TXT - plain text extraction.
+
PPTX - PowerPoint presentation with one slide per page (page rendered as image).
+
XLSX - Excel workbook with one sheet per page, text blocks as rows.
+
HTML - HTML file with semantic headings and styled text.
+
EPUB - E-book with one chapter per page for readers and Kindle.
@@ -210,20 +223,20 @@
Convert
Import to PDF
Convert other document types to PDF. Supports batch import and drag-and-drop reordering:
-
TXT — plain text with automatic word wrapping.
-
Images — PNG, JPG, JPEG, BMP, TIFF, WebP, GIF. One image per page.
-
Markdown — headings, lists, bold, and italic formatting.
-
DOCX — Word documents with paragraphs and tables.
-
PPTX — PowerPoint slides rendered to PDF pages.
-
XLSX — Excel sheets laid out as PDF tables.
-
HTML — web pages with headings, paragraphs, and lists.
-
EPUB — E-books converted to searchable PDF.
+
TXT - plain text with automatic word wrapping.
+
Images - PNG, JPG, JPEG, BMP, TIFF, WebP, GIF. One image per page.
+
Markdown - headings, lists, bold, and italic formatting.
+
DOCX - Word documents with paragraphs and tables.
+
PPTX - PowerPoint slides rendered to PDF pages.
+
XLSX - Excel sheets laid out as PDF tables.
+
HTML - web pages with headings, paragraphs, and lists.
+
EPUB - E-books converted to searchable PDF.
N-up (page layout)
-
Combine multiple PDF pages onto a single sheet — useful for printing or saving paper.
+
Combine multiple PDF pages onto a single sheet, useful for printing or saving paper.
Layouts: 2, 4, 6, 9, or 16 pages per sheet.
Paper size: A4, A3, or Letter.
@@ -245,15 +258,15 @@
Page numbers
Visual Editor
The editor has 9 modes selectable from the right panel:
-
Redact / Censor — draw a black rectangle to permanently hide content
-
Add Text — click anywhere to insert text with custom size and color
-
Add Image — drag a rectangle to insert an image (PNG, JPG)
-
Highlight — color overlay on selected text
-
Note / Comment — sticky note with a popup balloon
-
Fill Forms — auto-detects PDF form fields and lets you fill them
-
Edit Text — click existing text to modify it
-
Signature — draw, type, or import a signature; drag to place
-
Select — text selection and copy mode
+
Redact / Censor - draw a black rectangle to permanently hide content
+
Add Text - click anywhere to insert text with custom size and color
+
Add Image - drag a rectangle to insert an image (PNG, JPG)
+
Highlight - color overlay on selected text
+
Note / Comment - sticky note with a popup balloon
+
Fill Forms - auto-detects PDF form fields and lets you fill them
+
Edit Text - click existing text to modify it
+
Signature - draw, type, or import a signature; drag to place
+
Select - text selection and copy mode
Use Ctrl+Z / Ctrl+Y to undo/redo. Click Apply and Save to write all pending edits to a new PDF.
@@ -318,7 +331,7 @@
Compression "Extreme" level fails
The auto-updater is stuck
-
Auto-updater is disabled in Flatpak and Snap installations because the package manager handles updates. In direct installations, check that you have admin rights — the installer needs UAC elevation on Windows.
+
Auto-updater is disabled in Flatpak and Snap installations because the package manager handles updates. In direct installations, check that you have admin rights, because the installer needs UAC elevation on Windows.
+ Windows downloads are exclusive to the Microsoft Store for automatic updates and platform validation.
+
@@ -179,7 +178,7 @@
Ghostscript
- The Windows installer offers to install both automatically. On Linux, install from your package manager.
+ The Microsoft Store package bundles both automatically. On Linux, install from your package manager.
A modern reading experience built into the same app — no need for a separate viewer.
+
A modern reading experience built into the same app, with no need for a separate viewer.
@@ -245,7 +245,7 @@
Full-text search
Presentation (F5)
-
Fullscreen slideshow with arrow-key navigation, page counter, and Escape to exit.
+
Fullscreen slideshow with arrow-key navigation and a floating HUD. Annotate live with pen (P), highlighter (H), eraser (E), or a laser pointer (L). Press C to clear the page. Annotations are session-only and never modify the PDF.