pdf

  
Eine Bibliothek zum Hinzufügen von PDF-Anzeigefunktionen in Apps.
Letzte Aktualisierung Stabile Release Releasekandidat Beta-Release Alpha-Release
11. Februar 2026 - - - 1.0.0-alpha13

Abhängigkeiten deklarieren

Für eine Abhängigkeit von PDF müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.

Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:

Cool

dependencies {
    implementation "androidx.pdf:pdf-viewer-fragment:1.0.0-alpha13"
}

Kotlin

dependencies {
    implementation("androidx.pdf:pdf-viewer-fragment:1.0.0-alpha13")
}

Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben, lassen Sie es uns wissen. Bevor Sie ein neues Problem erstellen, sollten Sie sich jedoch die bereits gemeldeten Probleme in dieser Bibliothek ansehen. Wenn Sie sich einer Problemmeldung anschließen möchten, klicken Sie auf die Schaltfläche mit dem Stern.

Neues Problem melden

Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.

Für dieses Artefakt gibt es keine Versionshinweise.

Version 1.0

Version 1.0.0-alpha13

11. Februar 2026

androidx.pdf:pdf-*:1.0.0-alpha13 ist veröffentlicht. Version 1.0.0-alpha13 enthält diese Commits.

Neue Funktionen

  • EditablePdfViewerFragment wurde eingeführt. Diese Funktion erweitert den Standard PdfViewerFragment um PDF-Bearbeitungsfunktionen, einschließlich Anmerkungen und Formularausfüllen.
  • Anmerkungen: Nutzt die androidx.ink-Bibliothek, um umfassende Unterstützung für PDF-Anmerkungen zu bieten. Eine spezielle Symbolleiste, die durch das Bearbeitungssymbol FloatingActionButton aufgerufen wird, bietet Zugriff auf spezielle Tools wie:
    • Stift: Ermöglicht das freihändige Schreiben und Zeichnen direkt im Dokument. Nutzer können den Stiftstrich mit einer anpassbaren Stärke und einer breiten Farbpalette anpassen.
    • Hervorhebung: Unterstützt sowohl das kostenlose Hervorheben als auch das Hervorheben von Text. Das Tool ist in mehreren Farben verfügbar.
    • Radiergummi: Entfernt bestimmte Anmerkungen präzise.
    • Rückgängig machen und Wiederholen: Bietet integrierte Funktionen, mit denen sich die letzten Änderungen nahtlos rückgängig machen oder wiederholen lassen.
  • Formularausfüllen: Unterstützung für das Klicken auf und Ändern von Formularfeldern wie Texteingaben, Drop-down-Listen, Kästchen und Optionsfeldern.
    • Das EditablePdfViewerFragment unterstützt das Ausfüllen von Inline-Formularen und sorgt so für eine nahtlose Nutzererfahrung. Diese Funktion wird über die isFormFillingEnabled API in PdfView gesteuert.
    • EditablePdfDocument: Eine neue Schnittstelle, die PdfDocument erweitert, um Änderungen an Formulardaten zu verwalten und anzuwenden.
    • Die zusammensetzbare Funktion PdfViewer unterstützt die Interaktion mit Formularfeldern, die über den Parameter isFormFillingEnabled gesteuert werden kann.
  • Änderungen speichern: Mit PdfWriteHandle können bearbeitete Inhalte in einer angegebenen Datei gespeichert werden.
  • Bildauswahl: Es ist jetzt möglich, Bilder in PDF-Dokumenten durch langes Drücken auszuwählen. Diese Funktion wird über die Eigenschaft isImageSelectionEnabled sowohl in PdfView als auch im Composable PdfViewer aktiviert. Die resultierenden Daten werden über das ImageSelection-Modell in OnSelectionChangedListener verfügbar gemacht.
  • Zweiseitiges Layout: Für Geräte mit großem Display wurde ein nebeneinander angeordnetes Layout hinzugefügt, das mit der pagesPerRow-Property in PdfView und der PdfViewer-Composable-Funktion konfiguriert werden kann.

API-Änderungen

  • Einführung der Image Selection API in der Jetpack PDF Library (Iee0b9, b/470897750)
  • Die APIs der Verarbeitungsebene zum Ausfüllen von Formularen werden öffentlich gemacht. (Iec39c, b/474260451)
  • renderParams-Parameter zur openDocument API in SandboxedPdfLoader hinzufügen (If9344, b/438269273)
  • APIs für die Darstellungsschicht zum Ausfüllen von Formularen hinzufügen (I829c5, b/449869703)
  • Annotation @MainThread wurde den Callback-Methoden von OnFirstContentLoadListener und OnSelectionChangedListener hinzugefügt (I4cf10, b/466965940).
  • ApplyInProgressException-Konstruktor als intern markiert, um externe Instanziierung zu verhindern (I5cc66, b/465414484)
  • Annotation @MainThread für die Callback-Methoden von Listenern in PdfView hinzugefügt (Ie7201, b/429407597)
  • Es wurden APIs für native Bearbeitungsfunktionen über EditablePdfViewerFragment hinzugefügt. (Ifae6c, b/462049364)
  • FirstContentLoad API zu PdfView und PdfViewer hinzufügen (Icf63d, b/461666545)
  • [2Page] Add Two-Page Layout API to PdfViewer Library (I8d7f1, b/452517650)

Fehlerkorrekturen

  • Korrektur für Ausnahme aufgrund von „Page already closed before fetching bitmap“ (b/475255729)

Version 1.0.0-alpha12

3. Dezember 2025

androidx.pdf:pdf-*:1.0.0-alpha12 ist veröffentlicht. Version 1.0.0-alpha12 enthält diese Commits.

API-Änderungen

  • Entferne die Funktion textAsString aus TextSelection und verschiebe sie in androidx-main.
  • clearSelection in clearCurrentSelection umbenennen (I3a318, b/429407597)
  • Entfernen Sie die Funktion textAsString aus TextSelection (I1305d, b/429407798).

Fehlerkorrekturen

  • Ein Problem wurde behoben, bei dem der Schnell-Scroller in PdfView nicht standardmäßig sichtbar war. (I7fb0e)
  • Absturz in TextSelectionMenuProvider bei Auswahl mit Nulltext behoben. (I855df)

Version 1.0.0-alpha11

22. Oktober 2025

androidx.pdf:pdf-*:1.0.0-alpha11 ist veröffentlicht. Version 1.0.0-alpha11 enthält diese Commits.

Neue Funktionen

  • Smart-Menüelemente bei der Auswahl von PDF-Inhalten aktivieren
  • Auswahl von Hyperlinks und „Gehe zu“-Links in PDFs aktivieren
  • Die Auswahlmenü-APIs fromPdfView und PdfViewer Composable wurden eingeführt, damit Entwickler Auswahlmenüelemente hinzufügen können.
  • Die API zur Seitenausrichtung wurde in die Composables „PdfView“ und „PdfViewer“ aufgenommen. So können Entwickler die Seitenausrichtung auswählen, wenn die Inhaltshöhe kleiner als die Höhe des Darstellungsbereichs ist.

API-Änderungen

  • contentDesc kann jetzt Nullwerte enthalten und der Standardwert wurde entfernt. (I86f8c, b/441973880)
  • PdfSelectionMenuKeys für Menüelemente zur Linkauswahl verfügbar machen (Ic9b05, b/447079082)
  • PageAlignment API zu PdfView und PdfViewer in androidx-main hinzufügen
  • Die winkelbezogene API wird so geändert, dass Grad verwendet werden und Einheiten in Namen enthalten sind. Außerdem wird die Verwendung von Einheiten in Dienstprogrammen zur Winkelumrechnung verdeutlicht und sowohl Grad als auch Radian werden unterstützt. Die StockBrushes-API wird so geändert, dass die Stock-Pinselversion als Parameter der Factory-Funktion verwendet wird. Außerdem wird die Steuerung des Selbstüberlappungsverhaltens für Highlighter-Pinsel verfügbar gemacht. MutableAffineTransform.populateFromTranslate wird in populateFromTranslation umbenannt und InProgressStrokesView.setRenderFactory/getRenderFactory wird entfernt. (Id9eab, b/436656418)
  • PageAlignment API zu PdfView und PdfViewer hinzufügen (I9c9a5, b/438065228)
  • Selection Menu API aus PdfViewer Composable verfügbar machen (Id9b0f, b/407663999)
  • Mache PdfView zu einem ViewGroup. Keine Unterstützung für beliebige untergeordnete Elemente. (Ib51d8, b/410008792)
  • HyperLinkSelection und GoToLinkSelection aus PdfView verfügbar machen (I378c4, b/441280002)
  • PdfPageContent umgestalten, um generische Auswahlen zu unterstützen (I28f16, b/437845185)
  • Selection Menu API über PdfView verfügbar machen (Idd547, b/407663737)
  • Auswahlbezogene Klassen in ein separates Paket verschieben (I953cb, b/436157691)
  • Einführung von experimentellem onPdfViewCreated für den PdfView-Zugriff in PdfViewerFragment. (I86715, b/422620454)
  • Die FileDescriptor API wurde zu PdfLoader hinzugefügt. (I60b8d)

Fehlerkorrekturen

  • Eingabemodellierung verbessern, damit Striche die Eingabe genauer widerspiegeln (I93097)

Externer Beitrag

  • PdfSelectionMenuKeys für Menüpunkte zur Linkauswahl verfügbar machen
  • Selection Menu API über PdfViewer-Composable verfügbar machen
  • Selection Menu API von PdfView bereitstellen

Version 1.0.0-alpha10

16. Juli 2025

androidx.pdf:pdf-*:1.0.0-alpha10 ist veröffentlicht. Version 1.0.0-alpha10 enthält diese Commits.

Neue Funktionen

  • Die Auswahl wurde verbessert. Nutzer können jetzt Text über mehrere Seiten hinweg auswählen, indem sie die Auswahlziehpunkte über die Seitengrenzen hinaus ziehen.
  • Anwendungen können jetzt das Verhalten von Hyperlink-Klicks in PDF-Dokumenten abfangen und anpassen.

API-Änderungen

  • Stellt eine Composable-Funktion zum Präsentieren von PDF-Inhalten bereit (I8e7ee)
  • PdfPoint und PdfRect werden in das androidx.pdf.models-Paket (I26cf4) verschoben
  • Stellt eine View-Komponente zum Präsentieren von PDF-Inhalten bereit (I9fe27)
  • API wird bereitgestellt, um PDF-Ressourcen vorab zu initialisieren und die Kaltstartlatenz zu verringern (a18fa89)
  • API zum Überschreiben der Verarbeitung von Hyperlink-Klicks in PDF-Inhalten wird bereitgestellt(6330a8b)
  • Es wird ein neues Artefakt „pdf-document-service“ und die entsprechenden APIs PdfLoader, PdfDocument und SandboxedPdfLoader bereitgestellt. Die Schnittstellen können verwendet werden, um die Parsing- und Verarbeitungskomponente des PDF-Dokuments (Ide70d) zu implementieren.
  • Stellt eine API zum Festlegen von PdfDocument für PdfView bereit, um das Rendern des Dokuments zu initialisieren (If8738)

Version 1.0.0-alpha09

7. Mai 2025

androidx.pdf:pdf-*:1.0.0-alpha09 ist veröffentlicht. Version 1.0.0-alpha09 enthält diese Commits.

Wichtige Änderungen

  • Die Codebasis wurde grundlegend überarbeitet und ist jetzt vollständig in Kotlin geschrieben. Dabei werden Coroutines und ViewModel verwendet. Dazu gehört eine Neuimplementierung von PdfViewerFragment. Diese Version enthält keine neuen APIs oder Funktionen.

Bekannte Probleme:

  • Der Schnell-Scroller und die Seitenanzeige haben keine Schatteneffekte.
  • Einseitige PDF-Dokumente werden möglicherweise nicht immer zentriert und auf die Breite der Ansicht skaliert.

API-Änderungen

  • Kommentieren Sie containerStyleResId mit @StyleRes. (I88d85)

Version 1.0.0-alpha08

12. März 2025

androidx.pdf:pdf-document-service:1.0.0-alpha08, androidx.pdf:pdf-viewer:1.0.0-alpha08 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08 sind veröffentlicht. Version 1.0.0-alpha08 enthält diese Commits.

Fehlerkorrekturen

  • Die inkonsistente Platzierung des Auswahlmenüs auf verschiedenen Android-Geräten aufgrund von Skalierungsunterschieden wurde behoben. Die Platzierung des Auswahlmenüs ist jetzt auf allen Geräten einheitlich.
  • Die Position des Schnellscrollers und der Seitenanzeige wurde bei der Neuerstellung von Fragmenten in Szenarien wie Konfigurationsänderungen usw. angepasst.

Version 1.0.0-alpha07

26. Februar 2025

androidx.pdf:pdf-document-service:1.0.0-alpha07, androidx.pdf:pdf-viewer:1.0.0-alpha07 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07 sind veröffentlicht. Version 1.0.0-alpha07 enthält diese Commits.

Neue Funktionen

  • Die PdfViewerFragment unterstützt jetzt StylingOptions (eine Reihe von Stilressourcen-IDs), sodass benutzerdefinierte Formatierungen über newInstance oder XML (FragmentContainerView) möglich sind. Unterklassen können den geschützten Konstruktor für ähnliche Funktionen verwenden.
  • StylingOptions verwendet derzeit containerStyle, das Folgendes bietet:
    • Unterstützung benutzerdefinierter Drawables für den Ziehpunkt für schnelles Scrollen und die Seitenanzeige.
    • marginEnd-Attribut für die genaue Positionierung des Ziehpunkts für schnelles Scrollen und der Seitenanzeige.

API-Änderungen

  • Öffentliche Attribute aus PdfView hinzugefügt (I30fc5)
  • Es wurden neue APIs StylingOptions für die PDF-Ansicht hinzugefügt. (Id2993)

Fehlerkorrekturen

  • Es wurde ein Synchronisationsfehler zwischen dem Sichtbarkeitsstatus des Schnellscrollgriffs und der Seitenanzeige behoben.

Version 1.0.0-alpha06

29. Januar 2025

androidx.pdf:pdf-document-service:1.0.0-alpha06, androidx.pdf:pdf-viewer:1.0.0-alpha06 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06 sind veröffentlicht. Version 1.0.0-alpha06 enthält diese Commits.

Fehlerkorrekturen

  • Behoben: Absturz durch IllegalArgumentException beim Aufheben der Bindung eines nicht registrierten Dienstes (eb4e85)
  • Behoben: Absturz von IllegalArgumentException aufgrund von Unterschieden zwischen mMaxPages und numPages. (75d763)

Version 1.0.0-alpha05

11. Dezember 2024

androidx.pdf:pdf-document-service:1.0.0-alpha05, androidx.pdf:pdf-viewer:1.0.0-alpha05 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05 sind veröffentlicht. Version 1.0.0-alpha05 enthält diese Commits.

Fehlerkorrekturen

  • In dieser Bibliothek werden jetzt JSpecify-Annotationen für Nullsicherheit verwendet, die typbezogen sind. Kotlin-Entwickler sollten das folgende Compiler-Argument verwenden, um die korrekte Verwendung zu erzwingen: -Xjspecify-annotations=strict (dies ist die Standardeinstellung ab Version 2.1.0 des Kotlin-Compilers). (I38301, b/326456246)
  • Es wurde ein Problem behoben, bei dem nach dem Drehen des Geräts in Android 13 die zuvor geöffnete Seite angezeigt wurde. (Ib03dd)
  • Das Problem, dass die Toolbox bei der Rotation verschwindet, wurde behoben. (01148f)

Version 1.0.0-alpha04

13. November 2024

androidx.pdf:pdf-viewer:1.0.0-alpha04 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04 sind veröffentlicht. Version 1.0.0-alpha04 enthält diese Commits.

Erweiterte Kompatibilität

  • Die PDFViewer-Bibliothek unterstützt jetzt die Android-Versionen S, T, U und V. Diese verbesserte Kompatibilität hängt mit dem Update der SDK-Erweiterung 13 zusammen.

API-Änderungen

  • Der Mindestwert SdkExtension wurde für PdfViewerFragment hinzugefügt. (I922af)
  • Neue APIs für die PDF Viewer-Bibliothek werden bereitgestellt. (I0af57)

Fehlerkorrekturen

  • Absturzkorrektur für das Problem mit der Prozessbeendigung.
  • Korrekturen an der Benutzeroberfläche im Zusammenhang mit dem Passwortdialogfeld.
  • Barrierefreiheitskorrekturen für findInFileView und FastscrollView.

Laufende Entwicklung

  • Wir arbeiten aktiv daran, Jetpack Compose in die Bibliothek zu integrieren.

Version 1.0.0-alpha03

18. September 2024

androidx.pdf:pdf-viewer:1.0.0-alpha03 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03 sind veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.

Fehlerkorrekturen

  • Das Problem, dass die Tastatur nicht angezeigt wird, wenn die Suche zum ersten Mal geöffnet wird, wurde behoben.
  • Es wurden Fehler auf der Benutzeroberfläche im Zusammenhang mit der Schriftart der Ansicht „Suchen in Datei“ behoben.
  • Fehlerkorrekturen an der Benutzeroberfläche für die Textauswahl und den Ziehpunkt.

Bekannte Probleme

  • 3D-Bilder in PDF-Dokumenten werden in der Vorschau nicht gerendert.
  • PdfViewerFragment hat bei sehr großen PDF-Dokumenten (> 250 MB) einige Leistungsprobleme.

Version 1.0.0-alpha02

4. September 2024

androidx.pdf:pdf-viewer:1.0.0-alpha02 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02 sind veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.

Fehlerkorrekturen

  • Das Problem mit dem unscharfen PDF-Bild beim Drehen vom Hoch- ins Querformat und dem Wechsel der App in den Ruhemodus wurde behoben.
  • Im Menü „In Datei suchen“ wird die Anzahl der Ergebnisse jetzt auch dann beibehalten, wenn sich die Konfiguration ändert.
  • Das Symbol FloatingActionButton ist jetzt für einseitige PDFs verfügbar.
  • Probleme mit Überschneidungen zwischen der Leiste „In Datei suchen“ und FloatingActionButton wurden behoben.
  • Text- und Markierungsanmerkungen können jetzt im Viewer gerendert werden.
  • Die Bedienungshilfen für die Leiste „In Datei suchen“ wurden verbessert.
  • Es wurden UI-Korrekturen für die Drehung implementiert, darunter das Beibehalten der Anzahl der Suchergebnisse, das Problem mit dem verschwindenden Textauswahlmenü und das Problem mit der Überlappung des schwebenden Aktionsschaltfläche.
  • Das Menü „In Datei suchen“, das im Querformat hinter der Tastatur verborgen war, wurde korrigiert.

Bekannte Probleme

  • 3D-Bilder in PDF-Dokumenten werden in der Vorschau nicht gerendert.
  • PdfViewerFragment hat bei sehr großen PDF-Dokumenten (> 250 MB) einige Leistungsprobleme.

Version 1.0.0-alpha01

7. August 2024

androidx.pdf:pdf-viewer:1.0.0-alpha01 und androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.

Neue Funktionen

Die erste Alpha-Version von PDFViewer enthält erste Vorschauimplementierungen, die grundlegende PDF-Leseszenarien ermöglichen. Die PdfViewerFragment wird derzeit nur auf Android V-Versionen (SDK 35) unterstützt. Die Unterstützung für ältere Android-Versionen wird in zukünftigen Releases hinzugefügt.

  • Die Klasse PdfViewerFragment wurde eingeführt, mit der Ihre App ein PDF-Dokument rendern kann. PdfViewerFragment vereinfacht die Integration eines PDF-Viewers in Ihre Aktivität und ermöglicht Nutzern die folgenden Interaktionen:
    • Zoomen: Ziehen Sie die Finger zusammen oder auseinander, um die Zoomstufen für ein angenehmes Lesen anzupassen. Durch Doppeltippen können Sie schnell auf die Standardeinstellung heran- oder herauszoomen.
    • Navigation: Scrollen Sie im Standard- oder Zoomstatus. PdfViewerFragment bietet einen schnellen Scrubber zum schnellen Scrollen zwischen Seiten.
    • Textaktionen: Wenn Sie lange auf Text tippen, wird er ausgewählt. Nutzer können dann Optionen wie „Kopieren“ und „Alles auswählen“ auf der aktuellen Seite verwenden.
    • Passwortgeschützte Dokumente: PdfViewerFragment bietet ein Dialogfeld, in dem der Nutzer das Passwort eingeben und das Dokument öffnen kann.
    • Navigierbare Hyperlinks: Nutzer können Web-URLs oder Lesezeichen aufrufen, indem sie in der PDF-Datei auf Hyperlinks tippen.
    • Tastenkombination für den Anmerkungsmodus: Der Bearbeitungsmodus wird in PdfViewerFragment noch nicht unterstützt. Stattdessen wird in PdfViewerFragment ein FloatingActionButton angezeigt, das einen impliziten android.intent.action.ANNOTATE-Intent mit dem Dokument-URI auslöst.

API-Änderungen

  • Die Property PdfViewerFragment.documentUri wurde hinzugefügt, um einen Datei- oder Inhalts-URI für das Dokument festzulegen und das Laden des Dokuments zu starten. PdfViewerFragment zeigt ein rotierendes Ladesymbol an, wenn der URI festgelegt ist, was auf die Hintergrundverarbeitung des Dokuments hinweist.
  • Es wurde PdfViewerFragment.isTextSearchActive hinzugefügt, um die Sichtbarkeit des Menüs „Suchen in Datei“ zu ändern. PdfViewerFragment übernimmt den gesamten Ablauf, einschließlich der Eingabe, der Anzeige der Gesamtzahl der Übereinstimmungen, der Navigation zwischen den Ergebnissen und des Beendens.
  • Die Callbacks onDocumentLoadSuccess und onDocumentLoadError wurden hinzugefügt. Sie werden nach dem erfolgreichen Rendern des Dokuments oder nach dem Auslösen eines Fehlers vor dem Rendern aufgerufen.

Bekannte Probleme

  • Die Leiste „Suchen in Datei“ überlappt sich in einigen Fällen mit FloatingActionButton.
  • Das FloatingActionButton-Symbol ist für einseitige PDFs nicht sichtbar.
  • Die Anzahl der Ergebnisse wird bei einer Konfigurationsänderung im Menü „Suchen“ nicht beibehalten.
  • Beim Schließen des Menüs „In Datei suchen“ flackert das Bild.
  • 3D-Bilder in PDF-Dokumenten werden in der Vorschau nicht gerendert.
  • Bedienungshilfen werden in den folgenden Versionen aktiviert.
  • Das PDF-Bild wird beim Drehen vom Hoch- ins Querformat unscharf.
  • Text- und Markierungsanmerkungen werden nicht unterstützt.
  • PdfViewerFragment hat bei sehr großen PDF-Dokumenten (> 250 MB) einige Leistungsprobleme.

Note

  • compileSdk auf 35 5dc41be aktualisieren