pdf

  
Eine Bibliothek zum Hinzufügen von PDF-Anzeigefunktionen in Apps.
Letzte Aktualisierung Stabile Version Releasekandidat Betarelease Alpha-Release
22. Oktober 2025 - - - 1.0.0-alpha11

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-alpha11"
}

Kotlin

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

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

Feedback

Ihr Feedback hilft uns, Jetpack zu verbessern. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem stimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.

Neues Problem erstellen

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-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
  • Winkelbezogene APIs verwenden jetzt Grad und die Einheit ist im Namen enthalten. Die Einheiten in den Dienstprogrammen zur Winkelumrechnung sind eindeutig und es werden sowohl Grad als auch Radian unterstützt. Die StockBrushes-API verwendet jetzt die Version des Standardpinsels als Parameter der Factory-Funktion. Das Verhalten bei Selbstüberlappung für Highlighter-Pinsel kann jetzt gesteuert werden. MutableAffineTransform.populateFromTranslate wurde in populateFromTranslation umbenannt und InProgressStrokesView.setRenderFactory/getRenderFactory wurde 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)
  • Machen Sie 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)

Externe Beiträge

  • 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 bei 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 auch 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 Schnellscroll-Griff und die Seitenanzeige.
    • marginEnd-Attribut für die genaue Positionierung des Schnellscrollgriffs 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)
  • Ein Fehler wurde behoben, durch den 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 behoben, die mit der Schriftart der Ansicht „In Datei suchen“ zusammenhängen.
  • 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.
  • Überlappende Probleme 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 im Standard-/gezoomten Zustand 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 des Ablaufs.
  • 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ü „In Datei 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