Major release with a brand-new desktop UI and modernized packaging.
- New JavaFX GUI — document-centric desktop experience with PDF
preview, drag-to-place visible signatures, zoom/page navigation,
drag-and-drop loading, and a collapsible options panel. The legacy
Swing UI remains available via
-Djsignpdf.swing=true. - New Windows installers built with
jpackage(EXE, MSI, and a portable ZIP with bundled JRE), replacing the old InnoSetup + Launch4j + Ant + Wine toolchain. 32-bit Windows is no longer supported; 32-bit and Linux/macOS users can still use the cross-platformjsignpdf-<VERSION>.zipwith their own JRE. - New Linux Flatpak bundle — single-file
JSignPdf-<VERSION>-linux-x86_64.flatpakwith a bundled OpenJDK 21, desktop entry, and icon. - Java 21 is now the minimum runtime. The jpackage installers and
Flatpak ship their own runtime; users of the cross-platform ZIP need
a Java 21+ JRE on
PATH. - Named signature-setting presets (#360) — save signing configurations under custom names and switch between them from a toolbar combo or the new Presets menu. Passwords are captured (machine-local encrypted) only when Store passwords is enabled; disable it before sharing a preset file.
- Configuration moved to XDG-aware locations
(
$XDG_CONFIG_HOME/jsignpdf/,%APPDATA%\JSignPdf\,~/Library/Application Support/JSignPdf/); existing~/.JSignPdfsettings migrate automatically. Override withJSIGNPDF_CONFIG_DIR. The install-dirconf/is gone — edit advanced settings via File > Preferences…; PKCS#11 config is read from a fixed<config-dir>/pkcs11.cfg.
- Read passwords from stdin (#7). Pass
-for any of-ksp,-kp,-opwd,-upwd,-tscp,-tsp(opt in with--enable-stdin-passwords) to avoid leaking secrets via/proc/<pid>/cmdlineor shell history. - Append signature and Store passwords now default to checked on fresh installs.
- "Reset Settings" action added to the JavaFX UI.
- Translation bundles are now UTF-8; many language updates from Weblate contributors.
- Migrated the PDF engine to OpenPDF 3 (
org.openpdf.text.*), updated PDFBox to 3.0.7, BouncyCastle to 1.84. - Improved symlink handling incl. macOS (#168); integration tests for the signing pipeline (#293); publishing moved to Maven Central.
Thanks to everyone who contributed code, translations, bug reports, and feedback!