pdf

  
這個程式庫可在應用程式中新增 PDF 檢視功能。
最近更新時間 穩定版 候選版 Beta 版 Alpha 版
2025 年 7 月 16 日 - - - 1.0.0-alpha10

宣告依附元件

如要新增 PDF 的依附元件,您必須將 Google Maven 存放區新增至專案。詳情請參閱 Google 的 Maven 存放區

在應用程式或模組的 build.gradle 檔案中,新增所需構件的依附元件:

Groovy

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

Kotlin

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

如要進一步瞭解依附元件,請參閱「新增建構依附元件」一文。

意見回饋

您的意見可協助我們改善 Jetpack。如果您發現新問題,或是有改進這個程式庫的建議,請告訴我們。回報新問題前,請先查看這個程式庫的現有問題。只要按一下星號按鈕,即可投票給現有的問題。

建立新問題

詳情請參閱 Issue Tracker 文件

這個構件沒有任何版本資訊。

1.0 版本

1.0.0-alpha10 版本

2025 年 7 月 16 日

發布 androidx.pdf:pdf-*:1.0.0-alpha10。1.0.0-alpha10 版包含這些修訂項目

新功能

  • 強化選取功能,使用者可將選取控點拖曳到頁面邊界外,選取多個頁面的文字。
  • 應用程式現在可以攔截及自訂 PDF 文件中的超連結點擊處理方式。

API 變更

  • 公開用於呈現 PDF 內容的可組合項 (I8e7ee)
  • PdfPointPdfRect 移至 androidx.pdf.models 套件 (I26cf4)
  • 公開用於呈現 PDF 內容的 View 元件 (I9fe27)
  • 公開 API,可預先初始化 PDF 資源,並縮短冷啟動延遲時間 (a18fa89)
  • 公開 API,以便覆寫 PDF 內容的超連結點擊處理作業(6330a8b)
  • 公開新的構件 pdf-document-service 和對應的 API - PdfLoaderPdfDocumentSandboxedPdfLoader。這些介面可用於實作 PDF 文件的剖析和處理元件 (Ide70d)
  • 公開 API,在 PdfView 上設定 PdfDocument,以初始化文件的算繪作業 (If8738)

1.0.0-alpha09 版本

2025 年 5 月 7 日

發布 androidx.pdf:pdf-*:1.0.0-alpha09。1.0.0-alpha09 版包含這些修訂項目

重大異動

  • 程式碼集已大幅重構,現在完全以 Kotlin 編寫,並使用協同程式和 ViewModel。包括重新導入 PdfViewerFragment。這個版本不包含任何新 API 或功能。

已知問題:

  • 快速捲動器和頁面指標缺少陰影效果。
  • 單頁 PDF 文件可能無法一律置中,也無法縮放至檢視畫面寬度。

API 變更

  • 使用 @StyleRescontainerStyleResId 加上註解。(I88d85)

1.0.0-alpha08 版本

2025 年 3 月 12 日

發布 androidx.pdf:pdf-document-service:1.0.0-alpha08androidx.pdf:pdf-viewer:1.0.0-alpha08androidx.pdf:pdf-viewer-fragment:1.0.0-alpha08。1.0.0-alpha08 版包含這些修訂項目

修正錯誤

  • 修正不同 Android 裝置間因縮放差異,導致選單位置不一致的問題。選單位置現在在所有裝置上都一致。
  • 在設定變更等情況下,重新建立片段時,對齊快速捲動器和頁面指標位置。

1.0.0-alpha07 版本

2025 年 2 月 26 日

發布 androidx.pdf:pdf-document-service:1.0.0-alpha07androidx.pdf:pdf-viewer:1.0.0-alpha07androidx.pdf:pdf-viewer-fragment:1.0.0-alpha07。1.0.0-alpha07 版包含這些修訂項目

新功能

  • PdfViewerFragment 現在支援 StylingOptions (一組樣式資源 ID),可透過 newInstance 或 XML (FragmentContainerView) 自訂樣式。子類別可利用受保護的建構函式,取得類似功能。
  • StylingOptions 目前會接收 containerStyle,提供下列項目:
    • 支援快速捲動控點和頁面指標的自訂可繪項目。
    • marginEnd 屬性,可精確定位快速捲動控點和頁面指標。

API 變更

  • PdfView 新增公開屬性 (I30fc5)
  • 新增 PDF 檢視畫面專用的 StylingOptions API。(Id2993)

修正錯誤

  • 修正快速捲動控點與頁面指標顯示狀態之間的同步差異。

1.0.0-alpha06 版本

2025 年 1 月 29 日

發布 androidx.pdf:pdf-document-service:1.0.0-alpha06androidx.pdf:pdf-viewer:1.0.0-alpha06androidx.pdf:pdf-viewer-fragment:1.0.0-alpha06。1.0.0-alpha06 版包含這些修訂項目

修正錯誤

  • 修正:解除繫結未註冊的服務時,IllegalArgumentException 導致當機的問題 (eb4e85)
  • 修正:因 mMaxPagesnumPages 差異而導致 IllegalArgumentException 當機的問題。(75d763)

1.0.0-alpha05 版本

2024 年 12 月 11 日

發布 androidx.pdf:pdf-document-service:1.0.0-alpha05androidx.pdf:pdf-viewer:1.0.0-alpha05androidx.pdf:pdf-viewer-fragment:1.0.0-alpha05。1.0.0-alpha05 版包含這些修訂項目

修正錯誤

  • 這個程式庫現在使用 JSpecify 空值註解,這些註解屬於型別用途。Kotlin 開發人員應使用下列編譯器引數,強制執行正確用法:-Xjspecify-annotations=strict (這是 Kotlin 編譯器 2.1.0 版的預設值)。(I38301b/326456246)
  • 修正 Android 13 裝置在旋轉後顯示先前開啟頁面的問題。(Ib03dd)
  • 修正工具箱在旋轉時消失的問題。(01148f)

1.0.0-alpha04 版本

2024 年 11 月 13 日

發布 androidx.pdf:pdf-viewer:1.0.0-alpha04androidx.pdf:pdf-viewer-fragment:1.0.0-alpha04。1.0.0-alpha04 版包含這些修訂項目

擴充的相容性

  • PDFViewer 程式庫現在支援 Android S、T、U 和 V 版。這項強化相容性與 SDK 擴充功能 13 更新有關。

API 變更

  • 已將最低 SdkExtension 限制新增至 PdfViewerFragment。(I922af)
  • 公開 PDF 檢視器程式庫的新 API。(I0af57)

修正錯誤

  • 修正程序終止問題導致當機的錯誤。
  • 修正密碼對話方塊相關的 UI 問題。
  • 修正 findInFileViewFastscrollView 的無障礙問題。

持續開發

  • 我們正積極將 Jetpack Compose 納入程式庫。

1.0.0-alpha03 版本

2024 年 9 月 18 日

發布 androidx.pdf:pdf-viewer:1.0.0-alpha03androidx.pdf:pdf-viewer-fragment:1.0.0-alpha03。1.0.0-alpha03 版包含這些修訂項目

修正錯誤

  • 修正首次開啟搜尋功能時未顯示鍵盤的問題
  • 修正與 FindInFile 檢視區塊字型相關的 UI 問題。
  • 修正文字選取和拖曳控點的使用者介面。

已知問題

  • 檢視器不會顯示 PDF 文件中的 3D 圖片。
  • PdfViewerFragment 在處理非常大的 PDF 文件 (超過 250 MB) 時,會出現一些效能問題

1.0.0-alpha02 版

2024 年 9 月 4 日

發布 androidx.pdf:pdf-viewer:1.0.0-alpha02androidx.pdf:pdf-viewer-fragment:1.0.0-alpha02。1.0.0-alpha02 版包含這些修訂項目

修正錯誤

  • 已解決從直向轉為橫向時 PDF 圖片模糊的問題,以及應用程式進入休眠狀態的問題。
  • 現在即使設定變更,「在檔案中尋找」選單仍會保留結果計數。
  • 單頁 PDF 現在會顯示 FloatingActionButton 圖示。
  • 修正「在檔案中尋找」列與 FloatingActionButton 重疊的問題。
  • 現在可以在檢視器中顯示文字和醒目顯示註解。
  • 改善「在檔案中尋找」列的無障礙功能。
  • 我們已修正旋轉功能的使用者介面,包括保留搜尋次數、解決文字選取選單消失的問題,以及解決浮動動作按鈕重疊的問題。
  • 修正橫向模式下,鍵盤會遮住「在檔案中尋找」選單的問題。

已知問題

  • 檢視器不會顯示 PDF 文件中的 3D 圖片。
  • PdfViewerFragment 在處理非常大的 PDF 文件 (超過 250 MB) 時,會出現一些效能問題

1.0.0-alpha01 版

2024 年 8 月 7 日

發布 androidx.pdf:pdf-viewer:1.0.0-alpha01androidx.pdf:pdf-viewer-fragment:1.0.0-alpha01。1.0.0-alpha01 版包含這些修訂項目

新功能

PDFViewer 的初始 Alpha 版包含早期預先發布版實作,可支援核心 PDF 閱讀情境。請注意,PdfViewerFragment 目前僅支援 Android V (SDK 35) 版本。我們會在即將推出的版本中新增對舊版 Android 的支援。

  • 推出 PdfViewerFragment,應用程式可使用此類別來算繪 PDF 文件。PdfViewerFragment 可簡化在活動中整合 PDF 檢視器的程序,並讓使用者透過下列方式互動:
    • 縮放:雙指撥動可調整縮放等級,打造舒適的閱讀體驗;輕觸兩下則可快速縮放至預設狀態。
    • 瀏覽:在預設/縮放狀態下捲動。PdfViewerFragment 提供快速捲動軸,方便您快速捲動頁面。
    • 文字動作:長按文字即可選取,讓使用者在目前頁面使用「複製」和「全選」等選項。
    • 受密碼保護的文件:PdfViewerFragment 提供對話方塊,供使用者輸入密碼並開啟文件。
    • 可導覽的超連結:使用者只要輕觸 PDF 中的超連結,即可前往網頁網址或書籤。
    • 註解模式的快速鍵:PdfViewerFragment目前不支援編輯模式。而是顯示 PdfViewerFragment,並觸發含有文件 URI 的隱含 android.intent.action.ANNOTATE 意圖。FloatingActionButton

API 變更

  • 新增 PdfViewerFragment.documentUri 屬性,設定文件的檔案或內容 URI,並啟動文件載入作業。設定 URI 時,PdfViewerFragment 會顯示載入旋轉符號,表示文件正在進行背景處理。
  • 新增 PdfViewerFragment.isTextSearchActive,可切換「在檔案中尋找」選單的顯示設定。PdfViewerFragment 會處理整個流程,包括允許輸入、顯示比對總數、啟用結果間的導覽,以及結束流程。
  • 新增 onDocumentLoadSuccessonDocumentLoadError 回呼,會在文件成功算繪後,或在算繪前擲回錯誤後叫用。

已知問題

  • 在某些情況下,「在檔案中尋找」列會與 FloatingActionButton 重疊。
  • 單頁 PDF 不會顯示 FloatingActionButton 圖示。
  • 在「在檔案中尋找」選單中變更設定時,系統不會保留結果計數。
  • 關閉「在檔案中搜尋」選單時,畫面會閃爍
  • 檢視器不會顯示 PDF 文件中的 3D 圖片。
  • 無障礙功能將在後續版本中啟用。
  • 從直向轉為橫向時,PDF 圖片會變得模糊。
  • 不支援文字/螢光筆註解。
  • PdfViewerFragment 在處理非常大的 PDF 文件 (超過 250 MB) 時,會出現一些效能問題

附註

  • compileSdk 更新為 35 5dc41be