IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 加载PDF文件 -> 正文阅读

[移动开发]加载PDF文件

引入

api 'com.github.barteksc:android-pdf-viewer:2.4.0'

使用工具包加载云端PDF文件,异常报错,所以把文件下载下来保存到本地,再做加载

DownLoadUtils工具类前面文章里面有

Android 文件下载_积少成多,逐渐深入的博客-CSDN博客_android 文件下载

DownloadUtil.get().download(url, getExternalCacheDir().getPath(), new DownloadUtil.OnDownloadListener() {
            @Override
            public void onDownloadSuccess(File file) {
                L.e("onDownloadSuccess:" + file.getPath());
                pdfFile = file;
                handler.sendEmptyMessage(1);
            }

            @Override
            public void onDownloading(int progress) {
                L.e("onDownloading:" + progress);

            }

            @Override
            public void onDownloadFailed() {
                hideLoading();
                L.e("onDownloadFailed");
            }
        });
<com.github.barteksc.pdfviewer.PDFView
        android:id="@+id/pdf_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
pdfView.fromFile(pdfFile).load();

加载PDF

pdfView.fromUri(Uri)
pdfView.fromFile(File)
pdfView.fromBytes(byte[])
pdfView.fromStream(InputStream) //流被写入字节数组
pdfView.fromSource(DocumentSource)
pdfView.fromAsset(String)
    .pages(0,2,1,3,3,3) //默认显示所有页面
    .enableSwipe( true ) //允许使用滑动阻止更改页面
    .swipeHorizo??ntal(false)
    .enableDoubletap(true)
    .defaultPage(0)
     //允许在当前页面上绘制一些东西,通常在屏幕中间可见
    .onDraw(onDrawListener)
    //允许在所有页面上绘制一些东西,分别为每个页面绘制。仅对可见页面调用
    .onDrawAll(onDrawListener)
    .onLoad(onLoadCompleteListener) //在文档加载并开始渲染后调用
    .onPageChange(onPageChangeListener)
    .onPageScroll(onPageScrollListener)
    .onError(onErrorListener)
    .onPageError(onPageErrorListener)
    .onRender(onRenderListener) //在第一次渲染文档后调用
    //在单击时调用,如果处理则返回 true,false 以切换滚动句柄可见性
    .onTap(onTapListener)
    .enableAnnotationRendering(false) //渲染注释(例如注释、颜色或表单) 
    .password(null)
    .scrollHandle(null)
    .enableAntialiasing(true) //在低分辨率屏幕上稍微改进渲染
    // dp 中的页面间距。要定义间距颜色,请设置视图背景
    .spacing(0)
    .invalidPageColor(Color.WHITE) //无效且无法加载的页面颜色
    .load();

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-10-27 12:56:47  更:2021-10-27 12:58:48 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:05:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码