VERSIONSHISTORIE
Changelog
Mobile speichert wieder direkt in die geöffnete Datei statt immer „Speichern unter" zu erzwingen; am Desktop zerstört das Verschieben von Bildern auf Type3-Dokumenten (Google-Docs-/LibreOffice-Exporte) nicht mehr den Seitentext, und die mobile Textauswahl lässt sich zuverlässig über Zeilen hinweg ziehen.
- Speichern in die Quelle (Android, iOS) — „Speichern" schreibt jetzt in die geöffnete Datei zurück, statt immer den Dialog „Speichern unter" zu öffnen. Für flüchtige Arbeitskopien im Cache (Content-URIs, Zusammenführen, Scans) erscheint der Knopf nicht; fehlt das Schreibrecht, weicht die App auf „Speichern unter" aus.
- Bild verschieben zerstörte die Seite (Desktop) — auf Dokumenten mit Type3-Schriften (so exportieren Google Docs und LibreOffice) verschwand beim Verschieben oder Skalieren eines Bildes der gesamte Text der Seite. Bilder werden jetzt über eine zusätzliche Transformationsmatrix bewegt, ohne den Seiteninhalt neu zu schreiben; wo der alte Weg bleibt, verhindert eine Schutzprüfung stillen Textverlust.
-
Fehlende
.pdf-Endung beim Speichern — selbst eingetippte Dateinamen ohne Endung erhalten jetzt automatisch.pdf(Android, iOS und Desktop); „Speichern unter" am Desktop schlägt außerdem Name und Ordner des aktiven Tabs vor. - Textauswahl-Anfasser (Android, iOS) — die Anfasser sprangen beim Ziehen in falsche Zeilen, brachen am Zeilenwechsel ab und kollidierten mit Pinch-to-Zoom; bei mehrspaltigem Satz traf der Langdruck die Nachbarspalte. Alles behoben, die Trefferfläche der Anfasser ist zudem größer.
- Tab-übergreifende Suche (Desktop) — das aktive Dokument wurde doppelt durchsucht.
Bugfix-Release: Das Kontextmenü „PDFs zusammenführen" öffnete Dateien seit 0.4.1 nur noch einzeln statt sie zusammenzuführen, und Windows zeigte stattdessen den „Öffnen mit"-Dialog.
- Kontextmenü „PDFs zusammenführen" (Windows) — der Installer trug seit 0.4.1 fälschlich einen falschen Programmnamen in die Registry ein, sodass „Mit aeroPDF öffnen" und „PDFs zusammenführen mit aeroPDF" auf eine nicht existierende Datei zeigten. Windows zeigte deshalb den „Öffnen mit"-Dialog, und ausgewählte PDFs wurden einzeln statt zusammengeführt geöffnet.
Nachbesserungs-Release: Die Textauswahl hatte auf beiden
Plattformen ernste Regressionen — am Desktop griff die
zeichengenaue Auswahl durch einen Feldnamen-Bruch zwischen Kern
und Frontend praktisch nie, Strg+A markierte nur die
aktuelle statt der ganzen Seite, und die Flächen-Texterkennung auf
Bild-PDFs brach bei kleinen Auswahlen ab. Auf Mobile kollidierte
die Markierung mit Pinch-to-Zoom und Panning, und ein Langdruck
traf oft nur einen einzelnen Buchstaben statt des ganzen Wortes.
Alle vier Punkte sind behoben.
-
Strg+Amarkiert das ganze Dokument (Desktop) — statt nur der aktuellen Seite. Umfasst die Auswahl das komplette Dokument, holt das Kopieren den Text am Stück aus dem Suchindex statt Seite für Seite. - Wortauswahl per Langdruck (Mobile) — Langdruck und Doppeltipp bestimmen das Wort jetzt aus dem Zeichen unter dem Finger statt aus einer Einfügestelle; Weiterziehen erweitert wortweise.
- Textauswahl per Ziehen greift wieder (Desktop) — ein Feldnamen-Bruch zwischen Kern und Frontend ließ jede Seite als Bild-Scan gelten; Ziehen öffnete stattdessen die Flächenauswahl mit Texterkennung.
- Texterkennung bricht nicht mehr mit „Memory limit exceeded" ab — die Flächen-Texterkennung rendert nur noch den aufgezogenen Ausschnitt statt eine hochskalierte Vollseite, aus der 99 % verworfen wurden.
- Textebene nach Dokumentwechsel (Desktop) — Antworten, die erst nach dem Öffnen einer weiteren Datei eintreffen (z. B. beim Ablegen mehrerer PDFs per Drag & Drop), landen nicht mehr im Zwischenspeicher des neuen Dokuments.
- Textmarkierung kollidiert nicht mehr mit Pinch und Panning (Mobile) — solange der Finger die Auswahl führt, ruhen Zoom und waagerechtes Verschieben.
Nachbesserungs-Release: Die Textauswahl arbeitet jetzt wie im Browser (Desktop über Seitengrenzen hinweg, Mobile per Langdruck), gescannte Bild-PDFs bekommen eine Flächenauswahl mit Texterkennung, und der Kamera-Scan der Mobile-App erkennt Dokumente jetzt wirklich — samt echter Perspektivkorrektur. Dazu reparierte Tastenkürzel und Explorer-Integration, neue Werkzeuge und spürbar bessere Performance.
-
Browserartige Textauswahl — Doppelklick wählt
ein Wort, Dreifachklick eine Zeile,
Umschalt+Klick erweitert,Strg+Amarkiert die Seite; die Auswahl folgt dem Textfluss und läuft am Desktop über Seitengrenzen hinweg. Auf Mobile: Langdruck, Anfasser und Kopier-Leiste. - Texterkennung auf Bild-PDFs — Seiten ohne Textebene erkennt aeroPDF automatisch: Bereich aufziehen, Text wird per OCR gelesen und kopiert (Desktop).
- Mobile-Scan mit echter Dokumentenerkennung — Der Sucher zeigt das tatsächlich erkannte Blatt (Kantenerkennung im Rust-Kern, ohne Cloud), mit automatischem Auslöser, echter Perspektivkorrektur und Filtern mit Schattenentfernung.
-
Neue Werkzeuge — Anhänge verwalten, zwei PDFs
vergleichen (Text- und Pixel-Diff), ganze Ordner durchsuchen,
Formularfelder erstellen, Bilder aus der Zwischenablage einfügen
(
Strg+V) und PDF/A exportieren (experimentell).
-
Tastenkürzel —
Strg+,öffnet jetzt wirklich die Einstellungen, auf macOS funktioniert die Befehlstaste (⌘), AltGr löst keine Kürzel mehr aus, und die Pfeiltasten blättern Seiten. - Explorer-Integration (Windows) — Doppelklick auf eine PDF bei laufender App öffnet die Datei jetzt im Fenster; das Kontextmenü „PDFs zusammenführen" startet wieder, neu ist „Mit aeroPDF öffnen".
- Druckqualität — Der Druck rendert jetzt mit 300 DPI statt ~96 DPI und ist auf Papier scharf.
- Fehlermeldungen — Verstümmelte Umlaute („geöffnet") in Desktop-Meldungen sind repariert.
- Schneller beim Öffnen und Suchen — Große Dokumente öffnen deutlich flotter (Seitenmaße in einem Aufruf statt einem pro Seite), die Suche während der Eingabe belastet das System erheblich weniger.
- Annotations-Übersicht — Die Seitenleiste zeigt jetzt auch Kommentare und Markierungen, die bereits in der Datei gespeichert sind — auch aus anderen PDF-Programmen.
Großes Qualitäts-Release: Signaturen, Annotationen und Schwärzungen landen beim Einbrennen exakt an der gewählten Position (auch bei gedrehten Seiten und Scanner-PDFs), der Desktop-Zoom hält die Scroll-Position, alle Einfüge-Funktionen sind WYSIWYG. Neu: Text markieren & kopieren im Desktop-Viewer und ein Warn-Dialog vor dem Öffnen externer Links auf Desktop und Mobile.
-
Desktop: Text markieren & kopieren — Text
lässt sich direkt auf der Seite per Maus markieren;
Strg+Coder das Rechtsklick-Menü kopieren die Auswahl (ohne Auswahl: den Text der aktuellen Seite). Die Kopier-Berechtigung des Dokuments wird respektiert. -
Warn-Dialog für externe Links — Vor dem Öffnen
eines externen Links zeigen Desktop und Mobile-App einen
Bestätigungsdialog mit der vollständigen Ziel-URL. Nur
http,httpsundmailtowerden geöffnet, andere Linktypen werden aus Sicherheitsgründen blockiert. - Formen mit Stil einbrennen — Strichstärke, Füllfarbe und Deckkraft aus dem Eigenschaften-Panel werden jetzt tatsächlich ins PDF geschrieben und entsprechen der Vorschau.
- Einbrenn-Versatz behoben — Signaturen, Stempel, Formen, Schwärzungen und Formularfeld-Overlays landen jetzt exakt an der platzierten Position — auch auf gedrehten Seiten und bei PDFs mit verschobener CropBox (Scanner-/Druckvorstufen-PDFs). Auch das Einbrennen („Flatten") verschiebt den Seiteninhalt nicht mehr.
- Desktop: Zoom hält die Position — Beim Zoomen bleibt der Punkt unter dem Mauszeiger bzw. die Viewport-Mitte stabil; das Springen an andere Dokumentstellen ist behoben.
- Desktop: Einfüge-Funktionen WYSIWYG — Kreuz/Kreis/Stempel haben jetzt zoom-unabhängige Größen und sitzen zentriert am Klickpunkt; Text-Stempel werden mit Rahmen und Farbe eingebrannt; Freitext sitzt an der Vorschau-Position; Hervorhebungen haben die Deckkraft der Vorschau.
- Mobile: Platzierung und Markierungen stabil — Zoomen während einer Signatur-Platzierung verschiebt die Signatur nicht mehr; Schwärzungen und Freihand-Striche kleben am Seiteninhalt, auch wenn zwischendurch gescrollt oder gezoomt wird; Signaturen werden nicht mehr verzerrt; Link-Trefferflächen und Seitensprünge sind exakt.
Desktop/Deployment: Server-Adresse aktualisiert.
- Server-Adresse aktualisiert — Die verwendete Server-Adresse wurde für Update-/Deployment-Kommunikation angepasst.
Mobile-App: Massive Zoom-Performance-Verbesserung (Bitmap-Skalierung statt Neurendering), synchroner horizontaler Scroll über alle Seiten, Overlays und Notizheft-Funktionen auf allen Seiten, zuverlässige Cache-Invalidierung nach Annotationsänderungen.
- Mobile: Massive Performance-Probleme beim Zoomen behoben — PDF-Seiten werden einmal pro Seite gerendert; visuelles Zoomen erfolgt rein über Bitmap-Skalierung. Nur beim Überschreiten von Zoom 1.6× wird einmalig eine hochauflösende Version (2400 px) nachgeladen. Pinch-to-Zoom bleibt auch bei großen PDFs flüssig.
- Mobile: Horizontaler Scroll synchron über alle Seiten — Alle Seiten teilen sich einen gemeinsamen horizontalen Scroll. Verschiebt man Seite 1 nach rechts, sind nachfolgende Seiten beim Hochscrollen automatisch an derselben horizontalen Position.
-
Mobile: Overlays auch auf nicht-ersten Seiten
— Form-Felder, Platzierungs-Overlay und das Notizheft
funktionierten effektiv nur auf Seite 1. Die ListView trackt
jetzt die aktuell sichtbare Seite per
NotificationListener. - Mobile: Cache-Invalidierung nach Annotationen korrigiert — Durch die neue Cache-Key-Strategie (Standard + Hi-Res, ohne Zoom-Komponente) werden alle Render-Varianten einer Seite zuverlässig verworfen, wenn sich der Inhalt ändert.
Desktop: Seitensortierung per Drag & Drop und ▲/▼-Buttons in der Thumbnail-Seitenleiste, funktionierende Bildkompression (Scan-PDFs schrumpfen jetzt tatsächlich), blockierender Lade-Indikator während der Komprimierung. Mobile-App: Notizheft (Ebenen-System), Stift-Modus, Signatur-per-Tap, Form-Previews, individueller Stempel-Text, Stiftbreite für Freihand & Highlight, zahlreiche Bugfixes bei Koordinaten-Umrechnung und Annotationsplatzierung.
- Desktop: Ladeindikator während der Komprimierung — Blockierender Overlay mit Spinner und Status-Text zeigt, dass der Vorgang läuft (bei großen PDFs kann das mehrere Sekunden dauern).
- Desktop: Seitensortierung in der Thumbnail-Seitenleiste — Seiten per Drag & Drop (Maus-basiert, zuverlässig in WebView2) neu anordnen. Jedes Thumbnail zeigt beim Hover einen Drag-Handle sowie ▲/▼-Buttons für direktes Verschieben um eine Position.
- Mobile: Notizheft (Ebenen-System) — Neuer Chip „Notizheft: <Ebene>" in der Annotations-Toolbar. Pro PDF lassen sich beliebig viele Ebenen anlegen, zwischen ihnen wird per Tap gewechselt. Beim ersten Öffnen wird automatisch die Ebene „Original" angelegt. Annotationen werden automatisch persistiert (600 ms Debounce, vor „Speichern unter" und beim Schließen).
- Mobile: Stift-Modus (Pen-Only) — Neuer „Pen"-Schalter in der Annotations-Toolbar. Bei aktiviertem Pen-Modus zeichnen nur Stylus-Geräte (Apple Pencil, S-Pen); Finger-Tipps werden ignoriert.
- Mobile: Signatur per Tap platzieren — Nach Auswahl einer Signatur erscheint ein Hinweis zum Tippen auf die Zielstelle, statt sofortigem Einsetzen in die Mitte.
- Mobile: Form-Previews — Platzierungs-Overlays zeigen beim Verschieben die spätere Form (Kreis, Linie, Pfeil, Highlight, Stempel-Text, Signatur) statt nur ein leeres Rechteck.
- Mobile: Stempel mit individuellem Text — Beim Aktivieren des Stempel-Werkzeugs wird nach dem Text gefragt (Standard: „GEPRÜFT").
- Mobile: Stiftbreite für Freihand & Highlight — Neuer Slider in der Annotations-Toolbar (Freihand: 1–20 px, Highlight: 1–40 px).
- Mobile: Highlight als Textmarker-Stift — Highlight-Markierungen werden jetzt freihand auf der Seite aufgetragen (wie ein echter Textmarker).
- Mobile: Pinch-Zoom flüssiger — Cache-Rebuild nur noch nach 250 ms Inaktivität; Pinch-Schwelle auf 0,002 reduziert.
- Mobile: Seiten bei Zoom < 100 % zentriert — Schmale Seiten werden zentriert, nicht links-oben angedockt.
- Mobile: Schwärzen & Freihand — Zwei-Finger-Scrollen — Ein Finger zeichnet, zwei Finger scrollen.
- Mobile: Schwärzen-Aktionsleiste nur wenn nötig — Erscheint erst ab der ersten gesetzten Markierung.
- Mobile: Bottom-Sheets mit Drag-Handle — Material-3-Griff für einfaches Schließen im Dark Mode.
- Mobile: Seite drehen via Dialog — Dropdown + SegmentedButton statt Bottom-Sheet.
-
Mobile: XFDF-Export per Datei-Dialog —
FilePicker.saveFilemit Vorschlags-Dateiname. - Mobile: Sicherheit-Eintrag nur bei verschlüsselten Dateien — Drawer-Eintrag erscheint nur wenn nötig.
- Mobile: Mehrfachauswahl in der Seitenleiste — Checkbox-Modus entfernt; Kontext-Aktionen bleiben per Long-Press verfügbar.
- Mobile: Unterstreichen und Durchstreichen — Aus der Toolbar entfernt (Enum bleibt für XFDF-Kompatibilität).
-
Desktop: PDF-Kompression sparte fast keine Bytes
— Das Downsampling nutzte
FPDFImageObj_SetBitmap, das rohe BGRA-Pixel nur mit FlateDecode speichert — nach dem Verkleinern eines 300-DPI-Scans war der Stream oft größer als das Original-JPEG. Fix: Verkleinertes Bild wird jetzt als echtes JPEG (DCTDecode) mit der konfigurierten Qualität encodiert und viaFPDFImageObj_LoadJpegFileInlinegeladen. Zusätzlich wird rekursiv in Form-XObjects gesucht (viele Scanner packen die Seiten-Bitmap dort hinein), sodass auch solche PDFs tatsächlich schrumpfen. - Mobile: Notizheft-Ebenen verloren Annotationen nach Schließen — Auto-Save-Mechanismus verhindert Datenverlust beim Schließen des Viewers oder „Speichern unter".
-
Mobile: Freihand/Highlight starteten ~10 cm versetzt
—
event.transformbeim Pointer-Tracking korrekt übergeben. -
Mobile: Annotations-Platzierung nach Flatten
verschoben
— Reale
RenderBox.sizeperGlobalKeygelesen statt geschätzter Seitengröße. - Mobile: Stempel-Aussehen nach Flatten falsch — Rahmen und Text werden jetzt kombiniert eingebrannt.
-
Mobile: Signatur-Tap nicht erkannt —
HitTestBehavior.opaquebei aktiver Platzierung. -
Mobile: Zoom-abhängige Koordinaten falsch —
Umrechnung nutzt jetzt die gezoomte
pageWidth. -
Mobile: Freihand-Flatten-Koordinaten falsch
— BoxFit-contain-Math +
GlobalKey-Lookup stattMediaQuery.size. -
Mobile: Schwärzungen bei Zoom/kleinen Seiten falsch
—
RenderBox-Lookup des Page-Widgets; Markierungen außerhalb werden geclippt.
Mobile-App-Verbesserungen: Wischgeste im Verlauf, lesbare Ordnerpfade, korrigierte Android-Pfaderkennung, Logo in der AppBar, Statusbar-Farbkorrektur, stabilerer App-Start. CI: APK-Build zusätzlich zum AAB.
- Mobile: Verlauf — Wischgeste zum Entfernen — Einträge in der Zuletzt-geöffnet-Liste können per Swipe nach links entfernt werden (roter Papierkorb).
- CI/CD: Android APK-Build — Zusätzlich zum AAB wird jetzt eine signierte APK erstellt und als Artefakt archiviert (für manuelle Tests und Play-Console).
-
Mobile: Verlauf — Ordnername statt vollem Pfad
— Im Untertitel der Verlaufsliste wird der relative Ordnername
(z. B.
Download,Documents) angezeigt. -
Mobile: Verbesserte Android-Pfaderkennung —
Korrekte Auflösung von
file://-URIs, Downloads-Provider, ExternalStorage- und MediaStore-Dokumenten. -
Mobile: AppBar — Logo als Titel — Das
aeroPDF-Logo erscheint direkt als
SliverAppBar-Titel; doppelte Darstellung entfällt. -
Mobile: Statusbar-Farbe — Einheitlich
coreLogic(Light) bzw.deepTrust(Dark) statt transparent. -
Mobile: App-Initialisierung —
ensureInitialized()undRustLib.init()werden jetzt korrekt innerhalb vonrunZonedGuardedausgeführt. - Mobile: Merge — Lesbarer Dateiname im Viewer — Nach dem Zusammenführen zeigt die Titelleiste den Dateinamen statt des Temp-Pfads.
- Mobile: Viewer — Dateinamen bei Cache-Pfaden — Bei Cache- oder Temp-Pfaden wird „Cache" angezeigt.
Merge-Verbesserungen für Desktop und Mobile: Kontextmenü-Integration (Windows Explorer & Linux), Drag-and-Drop-Sortierung, Annotationen einbetten, automatisches Öffnen nach Zusammenführen.
-
Windows-Kontextmenü: „Mit aeroPDF zusammenführen"
— Mehrere PDFs im Windows Explorer auswählen und per Rechtsklick
direkt in aeroPDF zusammenführen. Registry-Eintrag unter
HKCU\SystemFileAssociations\.pdf\shell\(kein Admin erforderlich). Automatisch bei Installation und Update registriert. -
Linux-Kontextmenü: „Zusammenführen" —
Desktop-Action im
.desktop-File für kontextbasiertes Zusammenführen aus dem Dateimanager. -
Single-Instance-Handling (Desktop) —
tauri-plugin-single-instanceverhindert mehrere Instanzen bei Kontextmenü-Aufruf. Temp-Datei-basierte Merge-Queue sammelt alle ausgewählten Dateien. - Merge-Dialog: Sortierung per ▲/▼ Buttons (Desktop) — Dateien per Pfeil-Buttons nach oben/unten verschieben, zusätzlich zum Drag-and-Drop.
- Merge-Dialog: Annotationen einbetten (Desktop) — Neue Checkbox „Annotationen einbetten (Flatten)" bettet alle Annotationen vor dem Zusammenführen ein.
- Merge: Sortierung per ▲/▼ Buttons (Mobile) — Dateien per Pfeil-Buttons nach oben/unten verschieben, zusätzlich zum Drag-and-Drop-Reorder.
- Merge: Auto-Öffnen nach Zusammenführen (Mobile) — Nach erfolgreichem Zusammenführen wird das PDF direkt im Viewer geöffnet statt einer Ergebnisleiste.
- Merge: Ergebnisleiste entfernt (Mobile) — Die untere Leiste mit Speichern/Öffnen/Teilen wurde entfernt, da das PDF jetzt automatisch geöffnet wird.
- Merge-Dialog: Preview-Bereich entfernt (Desktop) — Zugunsten einer schlankeren Oberfläche entfernt.
- Merge-Dialog: Ghost-Element beim Drag-and-Drop (Desktop) — Visuelles Feedback beim Ziehen korrigiert.
- Merge-Dialog: Reihenfolge wurde nicht übernommen (Desktop) — Die sortierte Reihenfolge wird jetzt korrekt an den Rust-Merge-Befehl übergeben.
-
Mobile: Versionsanzeige in den Einstellungen —
Hardkodierte Version
0.3.0durch dynamischen Wert ausengine.coreVersion()ersetzt.
Großes Update: Desktop-Features (Seitenumkehrung, OCR-Sprachverwaltung, Signatur-Validierung, Code-Signing, Auto-Updater, Systemintegration), Mobile-App im Google Play Store und Apple App Store, Kamera-Scan, zahlreiche Bugfixes.
- Mobile App für Android und iOS — Flutter-basierte mobile App mit Rust-Kern (flutter_rust_bridge v2.11.1). Mobile UI mit softwelop CI-Theme: HomePage, ViewerPage (Zoom 0.5x–5x, Endlos-Scroll), Suchleiste (Regex).
- CI/CD: Mobile-Build-Pipeline — TeamCity- Konfigurationen für Android AAB- und iOS IPA-Builds. Fastlane für Play Store, ios-uploader für App Store Connect.
- Google Play Store & Apple App Store — aeroPDF als mobile App in beiden Stores veröffentlicht.
- Website: Store-Badges — Google Play und App Store Badges auf der Startseite und Download-Seite.
-
PDF-Seitenumkehrung (Desktop) — Toggle-Button
und Einstellung „PDF-Inversion im Dark Mode" invertiert
PDF-Inhalte (
filter: invert(0.88) hue-rotate(180deg)). - OCR-Sprachverwaltung (Desktop) — Sprachen können nachinstalliert und entfernt werden. Deskew-Option für schiefe Scans.
- Signatur-Validierung (Desktop) — Bestehende digitale Signaturen werden validiert und der Status (gültig/ungültig/unbekannt) im Viewer angezeigt.
- Code-Signing & Installer (Desktop) — NSIS-Installer mit Timestamping, macOS Notarization-Script, macOS .pkg-Installer, Linux-Paket-Signierung.
- Auto-Updater-Absicherung (Desktop) — Ed25519-Signaturverifikation für Updates, SHA-256-Checksummen, HTTPS-Only Transport.
- Systemintegration (Desktop) — macOS „Always open with"-Prompt, Windows COM-Handler-Registrierung, Linux Desktop-/AppStream-Verifikation.
- Performance-Benchmarks (Core) — Benchmark-Suite für Suche (500 Seiten), Komprimierung, PdfEngine-Init und Dokument-Parsing.
- Verlustfreie Dokumentintegrität (Core) — Integrationstests für Roundtrip-Byte-Identität, inkrementelles Speichern, Dateigrößenstabilität (< 5 %).
- Kamera-Scan zu PDF (Mobile) — Live-Vorschau, Edge Detection, Perspektivkorrektur, Filter, Multi-Page-Scan, DPI-Auswahl, PDF-Export.
- Save-As-Only-Enforcement (Mobile) — Rust-Bridge verhindert Speichern am Originalpfad. Android SAF und iOS File-Provider nur lesend.
- iOS File-App- & Android SAF-Integration — Document Provider Extension, Content-URI-Handling, Store-Listings für beide Stores vorbereitet.
- Feature-Vergleich Desktop vs. Mobile (Website) — Neue Vergleichstabelle auf der Features-Seite.
- CI: Flutter-Tests & Reproducible Builds — Unit-/Integrationstests für Mobile in der CI-Pipeline. Dokumentierte Build-Strategie mit LTO und SHA-256-Checksummen.
-
Dokumentation — Neue/erweiterte Dateien:
docs/tests.md,docs/mobile.md,docs/ansichtsmodi.md,docs/dark-mode.md,docs/einstellungen.md.
-
iOS Bundle ID vereinheitlicht — Von
com.softwelop.aeropdfMobileaufcom.softwelop.aeropdf(gleiche ID wie Android). - iOS App-Icons — Alpha-Kanal entfernt, abgerundete Ecken durch volles Quadrat ersetzt (Apple-Richtlinien-konform).
-
PDFium Mobile Download-Script — Quelle auf
bblanchon/pdfium-binariesumgestellt (iOS-Assets waren in der alten Quelle nicht verfügbar).
- CI: Flutter PATH auf Mac Agent — Flutter, Android SDK und NDK im launchd-PATH konfiguriert.
-
CI: CocoaPods UTF-8 Crash —
LANG=en_US.UTF-8für Ruby/CocoaPods gesetzt. - CI: Keychain-Unlock für Codesigning — Automatischer Keychain-Unlock vor iOS-Builds.
- CI: Bundler sudo-Fehler — Homebrew-Ruby statt System-Ruby im PATH für Fastlane/Bundler.
-
CI: Shell-Variablen-Escaping —
${VERSION}_androidkorrekt in Kotlin DSL escaped. -
Mobile: PDF-Erzeugung aus Scan-Bild —
Rust-Funktion
create_document_from_images()fehlte, Scan-Seite nutzte_getEngine()statt direktem Import. -
Mobile: Homescreen-Button-Layout — Scan-Button
kleiner als andere.
Row/Expandeddurch horizontaleListViewmit festen Kartenbreiten ersetzt. - Mobile: Formular-Overlay — Formularfelder waren nicht anklickbar. Komplett neu implementiert mit Material+InkWell und korrekter Hit-Detection.
- Mobile: Verschlüsselte PDFs — Verschlüsselte PDFs werden bei Zusammenführen/Komprimieren beim Hinzufügen abgelehnt statt stumm zu scheitern.
-
Mobile: Signatur-Hintergrund —
RepaintBoundaryinnerhalb desContainerverschoben für transparenten statt weißen Hintergrund. - Desktop: Objektbearbeitung bei langen Dokumenten — Nach Scrollen waren Text-/Bildobjekte nicht mehr klickbar. AbortController-Pattern für Event-Listener behebt den Leak.
Großes Feature-Release: Fehlerprotokoll, Spendenlink, umfangreiche Testsuite, verbesserte OCR-Integration, Windows-Standardapp-Registrierung und zahlreiche UI-Bugfixes.
-
Fehlerprotokoll (REQ-014) — Neuer Tab
„Fehlerprotokoll" in den Einstellungen. Alle Fehler und
Warnungen werden mit ISO-8601-Zeitstempel gesammelt (max. 500
Einträge, FIFO). Globale
window.onerror- undunhandledrejection-Handler. Fehler-Toasts sind klickbar und öffnen direkt das Fehlerprotokoll. - Spendenlink (REQ-015) — Ko-fi-Spendenlink auf der Startseite, im „Über aeroPDF"-Tab und im Website-Footer. Neue Spenden-Seite auf der Website mit Ko-fi- und PayPal-Integration.
-
209 Tests in aeropdf-core — 40+ neue
Integrationstests für alle Kernfunktionen. Singleton-Pattern für
PdfEngine (
get_engine()). - Tesseract OCR-Download-Skripte — Automatisches Herunterladen der OCR-Bibliotheken für Windows und macOS/Linux.
-
Zentrale Modussteuerung — Neue
deactivateAllModes()-Funktion stellt sicher, dass bei Werkzeugwechsel immer nur ein Modus aktiv ist.
- OCR: TESSDATA_PREFIX-Auflösung verbessert — Dreistufige Suche (Umgebungsvariable → gebündelte Ressourcen → App-Datenverzeichnis).
- PKCS#12: Bessere Fehlermeldung — Bei ASN1-Fehlern wird auf nicht unterstütztes PBES2/AES-Format (OpenSSL 3.x) hingewiesen.
-
Windows-Installer: Standard-App-Registrierung
— ProgId
aeroPDF.Documentmit DefaultIcon und Shell-Verknüpfung. Nutzer wird nach Installation gefragt, ob aeroPDF als Standard-PDF-App gesetzt werden soll. -
Linux .deb: OCR-Abhängigkeiten —
libtesseract5undlibleptonicaals Paketabhängigkeiten. - Flatpak: Tesseract + Leptonica aus Quellen — Leptonica 1.84.1 und Tesseract als cmake-ninja Builds.
- TeamCity CI: Pipeline-Optimierung — „Desktop Smoke-Check" durch „Core Full-Check" ersetzt.
- DEPENDENCIES.md — Komplett überarbeitete tabellarische Struktur.
-
Text-Bearbeitung komplett überarbeitet — Alle 7
Editor-Funktionen auf direkte PDFium C-Bindings umgestellt statt
High-Level-API, die
FPDFPage_GenerateContentnicht aufrief. - Text-Edit-Overlay — Overlay hatte keinen sichtbaren Hintergrund und ließ sich nicht schließen.
-
Menüleiste: Dropdowns öffnen sich nicht —
ResizeObserverzerstörte offene Dropdown-Panels. 100ms-Debounce und Guard ergänzt. -
reloadCurrentPagenicht definiert — Fehlende globale Funktion erstellt. -
Overlays nach Tab-Schließen sichtbar —
closeTab()räumt jetzt alle Overlays auf. -
Mehrere Werkzeuge gleichzeitig aktiv — Zentrale
deactivateAllModes()-Funktion. - Light Mode: Dialoge/Sidebars dunkel — Undefined CSS-Variablen durch definierte Variablen ersetzt.
-
OCR-Dialog: 3px-Element —
<progress>-Element mitheight: 8pxkorrigiert.
- Obsolete TeamCity CI-Patch-Datei.
Bugfix: Toolbar-Dropdown-Menüs werden nicht mehr abgeschnitten.
- Toolbar: Dropdown-Panels abgeschnitten — Die Dropdown-Menüs der kollabierten Toolbar-Gruppen wurden hinter der Tab-Leiste und der PDF-Ansicht abgeschnitten. Overflow-Eigenschaften auf der Toolbar entfernt — der responsive Collapse-Mechanismus macht horizontales Scrollen überflüssig.
Kritischer Bugfix: Auto-Updater funktioniert jetzt korrekt. Download-Seite verwendet Platzhalter-System für automatische Versionierung.
-
Auto-Updater: Falscher Public Key behoben — Der
in
tauri.conf.jsonhinterlegte Signatur-Verifizierungsschlüssel stimmte nicht mit dem tatsächlichen Signing-Key überein. Dies verursachte den Fehler „invalid minisign data". Der korrekte Public Key wurde eingesetzt.
-
Website: Download-Seite mit Platzhalter-System
— Versionsnummern werden nicht mehr manuell gepflegt, sondern
als
{{RELEASE_VERSION}}-Platzhalter im Sourcecode gespeichert und beim Deployment automatisch ersetzt. -
CI/CD: PrepareRelease vereinfacht — Das
sed-Kommando für die Download-Seite entfällt. Die Platzhalter werden beim Deployment aufgelöst.
UI-Fix-Release: Responsive Toolbar komplett überarbeitet, dauerhaft sichtbares Signatur-Panel behoben.
- Toolbar: Vollständig responsives Redesign — Alle Toolbar-Bereiche sind jetzt als kollabierbare Gruppen implementiert. Navigation, Zoom, Ansicht und Allgemein (Suche, Vollbild, Lesemodus, Einstellungen) werden bei schmalem Fenster progressiv zu kompakten Dropdown-Triggern eingeklappt.
- Toolbar: Flex-Shrink aktiviert — Toolbar-Sektionen dürfen jetzt schrumpfen statt fester Breite — bessere Platznutzung bei mittleren Fenstergrößen.
- Toolbar: Dropdown-Panels rechts ausgerichtet — Panels in der rechten Toolbar-Sektion öffnen sich nach links, damit sie nicht über den Fensterrand hinausragen.
-
Signatur-Validierung: Panel dauerhaft sichtbar
— Das Signatur-Prüf-Panel auf der rechten Seite war permanent
sichtbar. Ursache: Inline-Style
display: flexüberschrieb die CSS-Regel.sidebar.hidden { display: none }. Fix:displayaus dem Inline-Style entfernt und als CSS-Regel mit korrekter Spezifität implementiert.
Patch-Release: Auto-Updater-Endpoint repariert, Website-Deploy-Pipeline verbessert, Fehlerbehandlung bei Update-Prüfung korrigiert.
-
Auto-Update: Fehlerbehandlung verbessert —
check_for_updateverschluckt Fehlermeldungen nicht mehr. Nur echte Netzwerkfehler (DNS/Timeout) werden als „kein Update" behandelt; alle anderen Fehler (Signatur, Parsing) werden dem Nutzer angezeigt. -
CI/CD: PrepareRelease aktualisiert Website
automatisch
— Beim Version-Bump werden jetzt auch
website/download/index.htmlundwebsite/changelog/index.htmlautomatisch auf die neue Version aktualisiert. -
CI/CD: cleanDestination für Release-Artefakte —
cleanDestination = truefür Release-Artefakt-Dependencies, damit veraltete Dateien aus vorherigen Builds nicht übernommen werden. - Website: Download-Seite aktualisiert — Alle Dateinamen und Links auf aktuelle Version umgestellt.
-
Auto-Update: Endpoint nicht erreichbar — Der
Tauri-Updater-Endpoint
(
/updates/{target}/{arch}/{version}) lieferte HTTP 404. Ursache:deploy-website.shnutztrsync --exclude='updates/', wodurch die.htaccess-Rewrite-Regeln nie auf den Server gelangten. Fix: Root-Level.htaccessinwebsite/erstellt. - Website zeigt veraltete Version — Download-Seite und Changelog referenzierten noch v0.2.2 statt der aktuellen Version.
Patch-Release mit UI-Bugfixes und verbesserter Menüleisten-Responsivität.
- Menüleiste: Responsive Rework — Toolbar ist jetzt bei schmalen Fenstern horizontal scrollbar, sodass alle Buttons auch bei minimaler Fensterbreite erreichbar bleiben.
- OCR vorläufig deaktiviert — OCR-Button ausgeblendet, da Tesseract-Abhängigkeiten noch nicht mit dem Installer ausgeliefert werden.
- TeamCity: macOS DMG-Builds auf --bundles dmg — macOS-Builds nutzen jetzt Tauris nativen DMG-Bundler statt manueller hdiutil-Erstellung. Signaturen werden automatisch erzeugt.
- TeamCity: Doppelte macOS-Builds behoben — Platform-Builds hatten eigene Trigger, was separate Build-Chains erzeugte. Release startet jetzt alle 4 Builds als eine Chain.
- Auto-Update: Fehlende .sig-Signaturen — Alle 4 Plattform-Signaturen fehlten im latest.json-Manifest. Ursachen: macOS-Builds mit --bundles app erzeugten keine Signatur; Dateinamens-Casing-Fehler im latest.json-Script.
-
About-Dialog: Drittanbieter-Lizenzen —
Aufklapp-/Zuklapp-Mechanismus funktionierte nicht. Panel war
immer sichtbar und ließ sich nicht schließen. Umgestellt auf
style.displaymit Chevron-Animation. - About-Dialog: Footer-Überlappung — Speichern- und Abbrechen-Buttons wurden durch die Lizenzen-Liste verdeckt. Tab-Panel scrollt jetzt intern, Footer bleibt fixiert.
Patch-Release mit Bugfixes für den Auto-Update-Mechanismus und den Deploy-Prozess.
- Windows-Build: MSI entfernt, nur noch NSIS — WiX-MSI-Installer aus der Pipeline entfernt. Windows-Builds erzeugen nur noch NSIS-Installer und Portable ZIP.
- CI/CD: TeamCity-Agents eingerichtet — Drei Build-Agents (Windows, Linux, macOS) vollständig konfiguriert.
- CI/CD: GitHub Actions entfernt — Pipeline läuft vollständig über TeamCity.
-
Deploy-Script: Installer selbst hosten — Alle
Installer werden auf
aeropdf.debereitgestellt. -
Auto-Update: Tauri-Endpoint — Apache-Rewrite
für dynamische Updater-Pfade auf
latest.json.
-
Tessdata-Download (PowerShell 5.1) —
-MaximumRetryCountentfernt (nur ab PS 7). Manuelle Retry-Schleife. -
Deploy-Script: Leere Verzeichnisse —
ls-Pipeline mit|| trueabgesichert. -
Deploy-Script: Doppelte ZIP-Verlinkung —
Portable ZIP doppelt verarbeitet →
cp: same filebehoben.
- Objekt-Bearbeitung — Text- und Bildobjekte direkt im geöffneten PDF inline bearbeiten. Texte per Klick editieren, Bilder ersetzen oder exportieren.
- Texterkennung (OCR) — Gescannte PDFs per Tesseract OCR in durchsuchbare Dokumente umwandeln. 10 Sprachen, freie Seitenbereiche, automatische Scan-Erkennung.
- OCR Sandwich-PDF Textlayer — Erkannten Text als unsichtbaren Textlayer einbetten. PDF wird durchsuchbar (Strg+F) und kopierbar, ohne die visuelle Darstellung zu ändern.
- Text-Markierungen — Highlight, Unterstreichen und Durchstreichen als native PDF-Annotationen.
- Einstellungs-Dialog — Drei Tabs: Allgemein (Farbschema, Zoom, Ansicht), Updates, Über aeroPDF.
- Annotationen — Freihand, Linien, Pfeile, Rechtecke, Ellipsen, Text-Markierungen und Stempel auf Seiten zeichnen. Einbrennen für dauerhafte Speicherung.
- Digitale Signaturen — Visuellen Signaturstempel einbrennen und SHA-256-Hash zur Integritätsprüfung generieren.
- Sichere Schwärzung — Markierte Bereiche unwiderruflich entfernen inkl. physischer Löschung aus dem Content-Stream.
- Offline-Lizenzprüfung — Signiertes .aerolicense-Format mit Ed25519-Signatur und 4 Lizenzstufen.
- Delta-Updates — Inkrementelle Update-Pakete im AERO-Binärformat mit SHA-256-Verifizierung.
- Windows Taskbar Jump List — Zuletzt geöffnete Dokumente direkt über die Windows-Taskbar erreichbar.
- Auto-Updater — Automatische Update-Prüfung beim Start mit Toast-Benachrichtigung.
- macOS- & Linux-Builds — DMG (Intel + ARM), AppImage und DEB jetzt verfügbar.
- AcroForms + Einbrennen — Alle gängigen Formularfeldtypen ausfüllen und dauerhaft einbrennen.
- Link-Navigation — Klickbare Hyperlinks und interne Seitenverweise werden erkannt und als Overlays angezeigt.
- CI/CD: Build-Fehler auf allen Plattformen — Korrekte Feature-Flag-Selektion (OCR nur bei vorhandener Tesseract-Bibliothek).
- Flatten: Text nach Einbrennen sichtbar — Dreistufiger Ansatz: leeren AP-Stream entfernen, Feld fokussieren und Text via Form-Fill-API einspeisen, Focus killen.
-
Overlay-Verschwinden nach Anwenden —
repositionOverlaysForPage()wird jetzt imimg.onload-Callback aufgerufen statt synchron. - Formularfeld-Eingabe: Fokus-Verlust behoben — Kein Re-Rendering mehr bei Feldänderungen. Nur der Wert wird ans Backend gesendet.
- Freitext-Annotation ohne sichtbaren Text — DA-String (Default Appearance) wird jetzt korrekt gesetzt.
-
Radio-Button-Gruppierung — Backend nutzt
Klick-Simulation via
FORM_OnLButtonDown/Up. Frontend aktualisiert Gruppenmitglieder korrekt.
- PDF-Viewer mit Continuous Scroll und Tile-basiertem Rendering
- Stufenloser Zoom (25 %–400 %) per Toolbar, Strg+Mausrad
- Seiten bearbeiten: Drehen, Löschen, Einfügen, Verschieben
- Volltextsuche mit Regex-Unterstützung
- PDF komprimieren zur Größenreduktion
- Mehrere PDFs zusammenführen (Merge)
- Schwärzung (Redaction) mit Overlay-Vorschau
- Digitale Bild-Signaturen platzieren
- Annotationen: Text-Highlight und Freitext
- Schnell-Einfügen: Text (T), Kreuz (✕), Kreis (○)
- AcroForms: Textfelder, Checkboxen, Radio-Buttons, Dropdowns, Listboxen
- Formularfeld-Einbrennen (Flattening)
- Undo/Redo (bis zu 50 Schritte)
- Drag & Drop zum Öffnen von PDFs
- Tauri Desktop-App für Windows, macOS, Linux
- .pdf-Dateizuordnung und „Öffnen mit"-Unterstützung
- Drucken über temporäre PDF-Datei