pdf

  
Library untuk menambahkan kemampuan melihat PDF di dalam aplikasi.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
16 Juli 2025 - - - 1.0.0-alpha10

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada pdf, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

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

Kotlin

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

Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.

Masukan

Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Tidak ada catatan rilis untuk artefak ini.

Versi 1.0

Versi 1.0.0-alpha10

16 Juli 2025

androidx.pdf:pdf-*:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.

Fitur Baru

  • Pilihan yang ditingkatkan yang memungkinkan pengguna memilih teks di beberapa halaman dengan menarik tuas pilihan di luar batas halaman.
  • Aplikasi kini dapat mencegat dan menyesuaikan penanganan klik hyperlink dalam dokumen PDF.

Perubahan API

  • Mengekspos Composable untuk menampilkan konten PDF (I8e7ee)
  • Memindahkan PdfPoint dan PdfRect ke paket androidx.pdf.models (I26cf4)
  • Mengekspos komponen View untuk menampilkan konten PDF (I9fe27)
  • Mengekspos API untuk menginisialisasi resource PDF lebih awal dan mengurangi latensi mulai dingin (a18fa89)
  • Mengekspos API untuk mengganti penanganan klik hyperlink pada konten PDF(6330a8b)
  • Mengekspos artefak baru pdf-document-service dan API terkait - PdfLoader, PdfDocument, dan SandboxedPdfLoader. Antarmuka dapat digunakan untuk menerapkan komponen parsing dan pemrosesan dokumen PDF (Ide70d)
  • Mengekspos API untuk menyetel PdfDocument pada PdfView untuk menginisialisasi rendering dokumen (If8738)

Versi 1.0.0-alpha09

7 Mei 2025

androidx.pdf:pdf-*:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit ini.

Perubahan Besar

  • Codebase telah mengalami refaktorisasi besar dan kini sepenuhnya ditulis dalam Kotlin, menggunakan Coroutine dan ViewModel. Hal ini mencakup penerapan ulang PdfViewerFragment. Rilis ini tidak menyertakan API atau fitur baru.

Masalah Umum:

  • Penggulir cepat dan indikator halaman tidak memiliki efek bayangan.
  • Dokumen PDF satu halaman mungkin tidak selalu berada di tengah dan diskalakan ke lebar tampilan.

Perubahan API

  • Anotasikan containerStyleResId dengan @StyleRes. (I88d85)

Versi 1.0.0-alpha08

12 Maret 2025

androidx.pdf:pdf-document-service:1.0.0-alpha08, androidx.pdf:pdf-viewer:1.0.0-alpha08, dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.

Perbaikan Bug

  • Memperbaiki penempatan menu pilihan yang tidak konsisten di berbagai perangkat Android karena perbedaan penskalaan. Penempatan menu pilihan kini konsisten di seluruh perangkat.
  • Menyelaraskan posisi penggeser cepat dan indikator halaman pada pembuatan ulang fragmen dalam skenario seperti perubahan konfigurasi, dll.

Versi 1.0.0-alpha07

26 Februari 2025

androidx.pdf:pdf-document-service:1.0.0-alpha07, androidx.pdf:pdf-viewer:1.0.0-alpha07, dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit ini.

Fitur Baru

  • PdfViewerFragment kini mendukung StylingOptions (sekumpulan ID resource gaya) yang memungkinkan penataan gaya kustom melalui newInstance atau XML (FragmentContainerView). Subclass dapat menggunakan konstruktor yang dilindungi untuk fungsionalitas serupa.
  • StylingOptions saat ini menerima containerStyle yang menyediakan:
    • Dukungan drawable kustom untuk penanda scroll cepat dan indikator halaman.
    • Atribut marginEnd untuk penempatan yang tepat pada tuas scroll cepat dan indikator halaman.

Perubahan API

  • Menambahkan atribut publik dari PdfView (I30fc5)
  • Menambahkan API baru StylingOptions untuk tampilan PDF. (Id2993)

Perbaikan Bug

  • Memperbaiki perbedaan sinkronisasi antara tuas scroll cepat dan status visibilitas indikator halaman.

Versi 1.0.0-alpha06

29 Januari 2025

androidx.pdf:pdf-document-service:1.0.0-alpha06, androidx.pdf:pdf-viewer:1.0.0-alpha06, dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit ini.

Perbaikan Bug

  • Perbaikan: Error yang disebabkan oleh IllegalArgumentException saat melepaskan layanan yang tidak terdaftar (eb4e85)
  • Perbaikan: Error IllegalArgumentException karena perbedaan mMaxPages dan numPages. (75d763)

Versi 1.0.0-alpha05

11 Desember 2024

androidx.pdf:pdf-document-service:1.0.0-alpha05, androidx.pdf:pdf-viewer:1.0.0-alpha05, dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit ini.

Perbaikan Bug

  • Library ini kini menggunakan anotasi nullability JSpecify, yang merupakan penggunaan jenis. Developer Kotlin harus menggunakan argumen compiler berikut untuk menerapkan penggunaan yang benar: -Xjspecify-annotations=strict (ini adalah nilai default yang dimulai dengan compiler Kotlin versi 2.1.0). (I38301, b/326456246)
  • Memperbaiki halaman yang sebelumnya dibuka ditampilkan setelah rotasi di Android 13. (Ib03dd)
  • Memperbaiki Toolbox yang menghilang saat Rotasi. (01148f)

Versi 1.0.0-alpha04

13 November 2024

androidx.pdf:pdf-viewer:1.0.0-alpha04 dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit ini.

Kompatibilitas yang Diperluas

  • Library PDFViewer kini mendukung Android versi S, T, U, dan V. Kompatibilitas yang ditingkatkan ini terkait dengan update ekstensi SDK 13.

Perubahan API

  • Menambahkan batasan minimum SdkExtension ke PdfViewerFragment. (I922af)
  • Mengekspos API baru untuk library PDF Viewer. (I0af57)

Perbaikan Bug

  • Perbaikan error untuk masalah penghentian proses.
  • Perbaikan UI terkait dialog sandi.
  • Perbaikan aksesibilitas untuk findInFileView dan FastscrollView.

Pengembangan Berkelanjutan

  • Kami sedang berupaya mengintegrasikan Jetpack Compose ke dalam library.

Versi 1.0.0-alpha03

18 September 2024

androidx.pdf:pdf-viewer:1.0.0-alpha03 dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03 dirilis. Versi 1.0.0-alpha03 berisi commit ini.

Perbaikan Bug

  • Masalah keyboard tidak muncul saat penelusuran dibuka untuk pertama kalinya telah diselesaikan
  • Perbaikan UI terkait font tampilan FindInFile.
  • Perbaikan UI untuk pemilihan teks dan handel penarikan.

Masalah Umum

  • Gambar 3D dalam dokumen PDF tidak dirender di penampil.
  • PdfViewerFragment memiliki beberapa masalah performa pada dokumen PDF yang sangat besar (> 250 MB)

Versi 1.0.0-alpha02

4 September 2024

androidx.pdf:pdf-viewer:1.0.0-alpha02 dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02 dirilis. Versi 1.0.0-alpha02 berisi commit ini.

Perbaikan Bug

  • Masalah gambar PDF buram saat memutar dari potret ke lanskap dan aplikasi menjadi tidak aktif telah diselesaikan.
  • Menu temukan dalam file kini mempertahankan jumlah hasil meskipun konfigurasi berubah.
  • Ikon FloatingActionButton kini tersedia untuk PDF satu halaman.
  • Masalah tumpang-tindih antara kolom Cari dalam file dan FloatingActionButton telah diperbaiki.
  • Anotasi teks dan sorotan kini dapat dirender di penampil.
  • Peningkatan aksesibilitas telah dilakukan pada kolom Temukan dalam file.
  • Perbaikan UI telah diterapkan untuk rotasi, termasuk mempertahankan jumlah penemuan, mengatasi menu pilihan teks yang menghilang, dan menyelesaikan masalah FAB yang tumpang-tindih.
  • Menu temukan dalam file yang tersembunyi di balik keyboard dalam mode lanskap telah diperbaiki.

Masalah Umum

  • Gambar 3D dalam dokumen PDF tidak dirender di penampil.
  • PdfViewerFragment memiliki beberapa masalah performa pada dokumen PDF yang sangat besar (> 250 MB)

Versi 1.0.0-alpha01

7 Agustus 2024

androidx.pdf:pdf-viewer:1.0.0-alpha01 dan androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.

Fitur Baru

Rilis alfa awal PDFViewer mencakup implementasi pratinjau awal yang memungkinkan skenario pembacaan PDF inti. Perhatikan bahwa PdfViewerFragment saat ini hanya didukung di versi Android V (SDK 35). Dukungan untuk versi Android yang lebih lama akan ditambahkan dalam rilis mendatang.

  • Memperkenalkan PdfViewerFragment yang dapat digunakan aplikasi Anda untuk merender dokumen PDF. PdfViewerFragment menyederhanakan integrasi penampil PDF di Aktivitas Anda dan memungkinkan pengguna berinteraksi dengan cara berikut:
    • Zoom: Cubit untuk memperbesar dan memperkecil guna menyesuaikan tingkat zoom untuk pengalaman membaca yang nyaman, serta ketuk dua kali untuk memperbesar/memperkecil dengan cepat ke status default.
    • Navigasi: Scroll dalam status default/diperbesar. PdfViewerFragment menyediakan penggeser cepat untuk men-scroll dengan cepat antar-halaman.
    • Tindakan teks: Mengetuk lama teks akan memilihnya, sehingga pengguna dapat menggunakan opsi seperti Salin dan Pilih semua di halaman saat ini.
    • Dokumen yang dilindungi sandi: PdfViewerFragment menyediakan kotak dialog bagi pengguna untuk memasukkan sandi dan membuka dokumen.
    • Hyperlink yang dapat dinavigasi: Pengguna dapat membuka URL Web atau bookmark dengan mengetuk hyperlink dalam PDF.
    • Tombol pintas ke mode anotasi: Mode edit belum didukung di PdfViewerFragment. Sebagai gantinya, PdfViewerFragment menampilkan FloatingActionButton yang memicu intent android.intent.action.ANNOTATE implisit dengan URI dokumen.

Perubahan API

  • Menambahkan properti PdfViewerFragment.documentUri untuk menetapkan file atau URI konten untuk dokumen dan memulai pemuatan dokumen. PdfViewerFragment menampilkan indikator pemuatan dengan lingkaran berputar saat URI disetel yang menunjukkan pemrosesan dokumen di latar belakang.
  • Menambahkan PdfViewerFragment.isTextSearchActive untuk mengalihkan visibilitas menu temukan di file. PdfViewerFragment menangani seluruh alur - memungkinkan input, menampilkan jumlah total kecocokan, memungkinkan navigasi di antara hasil, dan keluar dari hasil.
  • Menambahkan callback onDocumentLoadSuccess dan onDocumentLoadError yang dipanggil setelah rendering dokumen berhasil atau setelah error ditampilkan sebelum rendering.

Masalah Umum

  • Panel temukan di file tumpang-tindih dengan FloatingActionButton dalam beberapa kasus.
  • Ikon FloatingActionButton tidak terlihat untuk PDF satu halaman.
  • Jumlah hasil tidak dipertahankan saat perubahan konfigurasi di menu temukan dalam file.
  • Terjadi kedipan saat menutup menu temukan dalam file
  • Gambar 3D dalam dokumen PDF tidak dirender di penampil.
  • Fitur aksesibilitas akan diaktifkan dalam rilis berikut.
  • Gambar PDF menjadi buram saat diputar dari potret ke lanskap.
  • Tidak ada dukungan untuk anotasi teks/sorotan.
  • PdfViewerFragment memiliki beberapa masalah performa pada dokumen PDF yang sangat besar (> 250 MB)

Catatan

  • Perbarui compileSdk ke 35 5dc41be