android 显示 PDF 文件
2017/2/13更新:
有朋友反映原来的库已经不能用了,或者用了以后有这样那样的问题,这里统一回复一下。
https://github.com/JoanZapata/android-pdfview 这个项目是2年前的项目了,很久没维护了。
作者已经在GitHub的Readme里面做了说明:
并且推荐了新的PDF开源库:https://github.com/barteksc/AndroidPdfViewer
------------------------------------------以下是原文,已过时 -------------------------------------
1、开源项目地址 :
https://github.com/JoanZapata/android-pdfview
2、引用
compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar
'
3、布局文件
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:fitsSystemWindows="true"tools:context="zyj.com.myapplication.MainActivity"><com.joanzapata.pdfview.PDFViewandroid:id="@+id/pdfView"android:layout_width="match_parent"android:layout_height="match_parent"/></RelativeLayout>
使用
package zyj.com.myapplication; import android.graphics.Canvas; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.widget.Toast; import com.joanzapata.pdfview.PDFView; import com.joanzapata.pdfview.listener.OnDrawListener; import com.joanzapata.pdfview.listener.OnLoadCompleteListener; import com.joanzapata.pdfview.listener.OnPageChangeListener;import java.io.File;public class MainActivity extends AppCompatActivity implements OnPageChangeListener, OnLoadCompleteListener , OnDrawListener {private PDFView pdfView ;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);pdfView = (PDFView) findViewById( R.id.pdfView );//从assets目录读取pdf displayFromAssets("bao.pdf");//从文件中读取pdfdisplayFromFile( new File( "fileName"));}private void displayFromAssets(String assetFileName ) {pdfView.fromAsset(assetFileName) //设置pdf文件地址.defaultPage(6) //设置默认显示第1页.onPageChange(this) //设置翻页监听.onLoad(this) //设置加载监听.onDraw(this) //绘图监听.showMinimap(false) //pdf放大的时候,是否在屏幕的右上角生成小地图.swipeVertical( false ) //pdf文档翻页是否是垂直翻页,默认是左右滑动翻页.enableSwipe(true) //是否允许翻页,默认是允许翻页// .pages( 2 , 3 , 4 , 5 ) //把2 , 3 , 4 , 5 过滤掉 .load();}private void displayFromFile( File file ) {pdfView.fromFile(file) //设置pdf文件地址.defaultPage(6) //设置默认显示第1页.onPageChange(this) //设置翻页监听.onLoad(this) //设置加载监听.onDraw(this) //绘图监听.showMinimap(false) //pdf放大的时候,是否在屏幕的右上角生成小地图.swipeVertical( false ) //pdf文档翻页是否是垂直翻页,默认是左右滑动翻页.enableSwipe(true) //是否允许翻页,默认是允许翻// .pages( 2 , 3 , 4 , 5 ) //把2 , 3 , 4 , 5 过滤掉 .load();}/*** 翻页回调* @param page* @param pageCount*/@Overridepublic void onPageChanged(int page, int pageCount) {Toast.makeText( MainActivity.this , "page= " + page +" pageCount= " + pageCount , Toast.LENGTH_SHORT).show();}/*** 加载完成回调* @param nbPages 总共的页数*/@Overridepublic void loadComplete(int nbPages) {Toast.makeText( MainActivity.this , "加载完成" + nbPages , Toast.LENGTH_SHORT).show();}@Overridepublic void onLayerDrawn(Canvas canvas, float pageWidth, float pageHeight, int displayedPage) {// Toast.makeText( MainActivity.this , "pageWidth= " + pageWidth + "// pageHeight= " + pageHeight + " displayedPage=" + displayedPage , Toast.LENGTH_SHORT).show(); } }
4、项目地址 ( android Studio 环境)
http://download.csdn.net/detail/yanzi2015/9341525
android 显示 PDF 文件相关推荐
- android pdf显示不全,android 显示pdf文件内容
先要对pdf文件进行解析,然后显示出来 下面是解析pdf的代码: package com.lingjoin.extractors; import java.io.BufferedReader; imp ...
- android APP内显示PDF文件
android APP内显示PDF文件 最近公司要做一个小功能,显示在APP内部显示pdf文件,刚接到任务感觉非常简单的一小功能,做的时候才发现在真的很不好实现. 因为android的webView与 ...
- 如何在 SAP UI5 应用里显示 PDF 文件试读版
一套适合 SAP UI5 初学者循序渐进的学习教程 本专栏计划的文章数在 300 篇左右,到 2022年12月23日为止,目前已经更新了 155 篇,专栏完成度为 51.6%,完成度已经超过了一半了. ...
- 在html中加入pdf文件吗,如何在网页中显示PDF文件
我们是不是对百度文库能直接在网页上显示PDF文件感到好奇,你是否也想实现这样的功能?很多朋友认为可以直接在网页中插入代码就可以实现这个功能,其实要在网页中完整地显示PDF文件,需要把PDF文件转换成S ...
- ASP.NET 用 FlexPaper 在页面上显示 PDF 文件
必要条件 演示 ASP.NET 用 FlexPaper 在页面上显示 PDF 文件 软件环境 解决方案结构 简单显示 SWF 文件 上传并显示 PDF 文件 常见问题 参考资料 其实,虽说是显示 PD ...
- 【C# 基础】— 解决 winForm 引用 Adobe PDF Reader控件不显示pdf 文件 问题
前言 公司的CS 终端需要显示 PDF 文件 ,在换用了"Adobe PDF Reader" 这个控件后,运行程序不报错,窗体控件区显示一片空白,PDF 文件就是不显示,这是怎么回 ...
- vue项目读取显示pdf文件
项目需求:展示pdf条款. 方法的实现:使用 iframe 标签 代码段: 数据 data(){return{detail: [{name: '条款1',to: './public/pdf_tk.pd ...
- Asp.net Core 配合 PDFObject 和 pdf.js 在浏览器显示pdf文件
Asp.net Core 配合 PDFObject 和 pdf.js 在浏览器直接显示pdf文件 测试环境的浏览器版本: Chrome :90.0.4430.93(64 位) FireFox :88. ...
- 【教程】PDF组件Spire.PDF 教程:在C#中显示PDF文件的打印预览
本文演示如何使用Spire.PDF和c#在Windows窗体应用程序中显示PDF文件的打印预览. 在使用下面的代码之前,我们需要创建一个Windows窗体应用程序,在窗体中添加一个PrintPrevi ...
最新文章
- 拷贝的代码中去除行号的方法
- C# 任务栏的相关信息
- 项目启动:java程序包不存在_ideaError:(3, 24) java: 程序包不存在的问题
- 英语口语-文章朗读Week8 Friday
- [转]iis7.5+win2008 出现 HTTP Error 503. The service is unavailable.
- Exchange2003-2010迁移系列之十三,Exchange邮箱迁移
- oracle中创建一个用户,只能查看指定的视图,如何授权,创建别名
- 【转】初试JNI Java与C/C++交互
- Django(五):后台管理平台admin
- C语言抽奖程序随机实现,简单的号码抽奖程序 - oixxan的个人博客 - OSCHINA - 中文开源技术交流社区...
- 什么是CDN,有何作用?
- GCC中的编译选项“-I”(大写i),“-L”(大写l),“-l”(小写l)等参数
- 推荐几款基于 Markdown 在线制作简历的网站
- php m403n安装错误,HP LaserJet M403n驱动
- HTML学习笔记9——CSS3制作网页动画
- alias常见小问题汇总20例
- 个人博客选什么域名?
- Win10系统安装SQL 2010教程
- Mongodb网页管理工具,基于Spring Boot2.0,前端采用layerUI实现
- 洛谷P2006-赵神牛的游戏(模拟)