導航:首頁 > 操作系統 > android解析pdf下載

android解析pdf下載

發布時間:2024-12-19 01:46:32

1. android能直接打開pdf文件嗎

可以,部分手機又內嵌的PDF閱讀工具,沒有內嵌的,可以自行下載安裝一個例如wps等

2. android 如何獲得pdf文件的頁數

分頁方法:

  1. 打開網路pdf 思路整體還是來源與圖片的載入。

  2. android中載入網路圖片的框架有很多個。如image-laoder, fresco、glide等,首先都是從內存中找圖片,如果內存中沒有,接著從本地找,本地沒有在從網路下載。

  3. android中載入pdf也是類似,首先從本地找pdf文件,如果本地存在該pdf文件,直接打開,如果本地不存在,將該pdf文件下載到本地在打開。

  4. 下載文件用到了retrofit2的庫,已經封裝到android_pdf中了。

  5. 2.依賴android_pdf庫方法

  6. 2.1 在項目的gradle中增加如下代碼:

  7. compile 'com.lidong.pdf:android_pdf:1.0.1'

  8. 2.2 一句代碼就可以載入網路pdf。

  9. ```

  10. pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName); //設置pdf文件地址

  11. ```

  12. 2.3對fileFromLocalStorage(this,this,this,fileUrl,fileName)的解析

  13. /**

  14. ```

  15. * 載入pdf文件

  16. * @param onPageChangeListener

  17. * @param onLoadCompleteListener

  18. * @param onDrawListener

  19. * @param fileUrl

  20. * @param fileName

  21. */

  22. public void fileFromLocalStorage(

  23. final OnPageChangeListener onPageChangeListener,

  24. final OnLoadCompleteListener onLoadCompleteListener,

  25. final OnDrawListener onDrawListener,

  26. String fileUrl,

  27. final String fileName)

  28. ```

  29. 1. OnPageChangeListener onPageChangeListener :翻頁回調

  30. 2. OnLoadCompleteListener onLoadCompleteListener:載入完成的回調

  31. 3. OnDrawListener:頁面繪制的回調

  32. 4. String fileUrl : 文件的網路地址

  33. 5. String fileName 文件名稱

  34. 3.使用android_pdf庫方法

  35. 3.1寫一個布局文件

  36. ```

  37. <?xml version="1.0" encoding="utf-8"?>

  38. <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

  39. xmlns:tools="http://schemas.android.com/tools"

  40. android:id="@+id/activity_main"

  41. android:layout_width="match_parent"

  42. android:layout_height="match_parent"

  43. tools:context="com.lidong.pdf.androidpdf.MainActivity">

  44. <com.lidong.pdf.PDFView

  45. android:id="@+id/pdfView"

  46. android:layout_width="match_parent"

  47. android:layout_height="match_parent"

  48. />

  49. </RelativeLayout>

  50. ```

  51. 3.2在MainActivity中載入

  52. ```

  53. import android.graphics.Canvas;

  54. import android.os.Environment;

  55. import android.support.v7.app.AppCompatActivity;

  56. import android.os.Bundle;

  57. import android.util.Log;

  58. import android.widget.Toast;

  59. import com.lidong.pdf.PDFView;

  60. import com.lidong.pdf.api.ApiManager;

  61. import com.lidong.pdf.listener.OnDrawListener;

  62. import com.lidong.pdf.listener.OnLoadCompleteListener;

  63. import com.lidong.pdf.listener.OnPageChangeListener;

  64. import com.lidong.pdf.util.FileUtils;

  65. import java.io.File;

  66. import java.io.FileOutputStream;

  67. import java.io.IOException;

  68. import java.io.InputStream;

  69. import okhttp3.ResponseBody;

  70. import rx.android.schelers.AndroidSchelers;

  71. import rx.functions.Action1;

  72. import rx.schelers.Schelers;

  73. public class MainActivity extends AppCompatActivity implements OnPageChangeListener

  74. ,OnLoadCompleteListener, OnDrawListener {

  75. private PDFView pdfView ;

  76. @Override

  77. protected void onCreate(Bundle savedInstanceState) {

  78. super.onCreate(savedInstanceState);

  79. setContentView(R.layout.activity_main);

  80. pdfView = (PDFView) findViewById( R.id.pdfView );

  81. displayFromFile1("http://file.chmsp.com.cn/colligate/file/00100000224821.pdf", "00100000224821.pdf");

  82. }

  83. /**

  84. * 獲取打開網路的pdf文件

  85. * @param fileUrl

  86. * @param fileName

  87. */

  88. private void displayFromFile1( String fileUrl ,String fileName) {

  89. pdfView.fileFromLocalStorage(this,this,this,fileUrl,fileName); //設置pdf文件地址

  90. }

  91. /**

  92. * 翻頁回調

  93. * @param page

  94. * @param pageCount

  95. */

  96. @Override

  97. public void onPageChanged(int page, int pageCount) {

  98. Toast.makeText( MainActivity.this , "page= " + page +

  99. " pageCount= " + pageCount , Toast.LENGTH_SHORT).show();

  100. }

  101. /**

  102. * 載入完成回調

  103. * @param nbPages 總共的頁數

  104. */

  105. @Override

  106. public void loadComplete(int nbPages) {

  107. Toast.makeText( MainActivity.this , "載入完成" + nbPages , Toast.LENGTH_SHORT).show();

  108. }

  109. @Override

  110. public void onLayerDrawn(Canvas canvas, float pageWidth, float pageHeight, int displayedPage) {

  111. // Toast.makeText( MainActivity.this , "pageWidth= " + pageWidth + "

  112. // pageHeight= " + pageHeight + " displayedPage=" + displayedPage , Toast.LENGTH_SHORT).show();

  113. }

  114. ```

3. 基於android如何讀取pdf文件

  1. 首先在網路手機助手或者在別的別的第三方下載工具里下載ireader,如圖所示。

4.點擊確定之後會自動安裝pdf組件。安裝好之後,再次在文件管理器內打開pdf文件。這時候就可以閱讀該文件了。

閱讀全文

與android解析pdf下載相關的資料

熱點內容
程序員那麼可愛男女主合照高清 瀏覽:380
python中引入根號 瀏覽:306
redis文件夾賦予許可權後還是打不開 瀏覽:132
哈希現實中有多少程序員 瀏覽:53
類似加菲貓影視的app還有什麼 瀏覽:796
什麼app可以買華強北的貨 瀏覽:271
汽車空調光裕壓縮機 瀏覽:487
怎麼給pdf做標記 瀏覽:457
python判斷k線最高價 瀏覽:689
程序員能力測試 瀏覽:287
tmod用來做什麼單片機 瀏覽:651
杭州洗車用什麼app 瀏覽:755
怎麼把安卓設置了軟解播放 瀏覽:724
安卓怎麼設置孩子不能下載 瀏覽:777
你不知道程序員有多拼 瀏覽:925
程序員與數據員的區別 瀏覽:632
wdcp重啟php 瀏覽:137
python整合展示數據 瀏覽:488
怎麼在foxmail看伺服器地址 瀏覽:985
汕頭數據加密有哪些 瀏覽:223