MuPDF是一款轻量级的开源软件,可以用来阅读PDF文件。下载完源代码以后,想要运行成功,除了Android SDK之外,还需要Android NDK环境,因此有点麻烦。

但是一旦安装完必须的环境以后,后面的编译其实并不烦。

1  安装Android SDK, NDK,Cygwin.(Cygwin是为了在Windows环境下编译,linux环境不需要)

安装方式:http://www.cnblogs.com/CharlesGrant/p/4763571.html

2 下载MuPDF,当前版本为1.2

https://code.google.com/p/mupdf/downloads/list

3  把 mupdf-1.2-source/android/下的文件"local.properties.sample" 改名为 "local.properties",并且把sdk.dir的值指向你电脑配置的android sdk位置

4 打开Cygwin,定于到mupdf-1.2-source根目录,运行 make, 不要定位到mupdf-1.2-source/android/,否则会没有反应,

运行成功后会出现一个build目录,虽然控制台会出现一些错误信息,但是不用管它,不影响下一步

5 在Cygwin 中用cd命令定位到 mupdf-1.2-source/android/目录,运行 "ndk-build",等待一段时间,

系统会生成一个 libmupdf.so 文件在 lib(s) 文件夹

6 在Eclipse中选择导入android代码的选项,把mupdf-1.2-source/android/下的代码导进工程,运行工程到你的终端

(模拟器或者真实的移动设备),OK,打开后通过文件夹去找到对于的pdf文件,就可以查看了。

注意:没有通过NDK编译,直接运行mupdf-1.2-source/android/下的工程,可以运行成功,但是在查看pdf文件的时候会报错。

开源android pdf阅读:

Vudroid:

Google code:http://code.google.com/p/vudroid/

源码提取:http://code.google.com/p/vudroid/source/checkout

基于了 mupdf 库开发

这是一款可以阅读pdf和djvu格式文本的阅读器。按道理说我使用这个给自己带来一定的麻烦,因为我自己需要剥离pdf部分,因为作者底层用的ndk开发,我还得重新编译so库。但是,在我找到的所有源代码中,此作品是最顺畅的,我不能割舍。如果大家想要快速使用而不想剥离pdf部分,可以使用我的google code:http://code-ernest.googlecode.com/svn/trunk/DocumentViewer

支持缩放,支持手势移动,能显示阅读的页数,打开大文件也没啥问题

缺点:显示有点不流畅,它是一部分一部分加载的

droidReader

Google code: http://code.google.com/p/droidreader/

其采用native library和Vudroid一样:MuPDF

但是它的缺点是,实现上比Vudroid少了那么点顺畅性,在zoom这一点上要输Vudroid,其他方面都很棒。

apv:

Google code:http://code.google.com/p/apv/

其采用native library和Vudroid一样:MuPDF

理论上来说应该和Vudroid不太差,它的问题是刷新比Vudroid要慢那么一点,没有多点触控。但是,有一点必须说的是:Vudroid读取文本格式的超强,我给过20M的文字版的pdf测试过,vudroid都能顺畅阅读,Vudroid读取扫描版的或者里面有图片的要差一点,速度稍慢;而apv读取扫描版的则顺畅一点,50M的扫描版也没有问题,但是,20M的文字版pdf它不能读,我没有深究什么原因,大家有兴趣的可以发现下,望指教:ernest.he2009@gmail.com

apdfviewer:

Google code: http://code.google.com/p/apdfviewer/

代码最少,整页加载模式中最快的一款,当然,快,就意味着有可能是ndk开发,不错它就是ndk的产物,有兴趣的可以使用。注意:大文件读取有点慢,我以为它死了。这一点上最好的是Vudroid。

Android PDF Viewer

前人的总结:http://my.oschina.net/ernest/blog/16999

转载于:https://www.cnblogs.com/CharlesGrant/p/4763586.html

Android MuPDF 阅读PDF文件相关推荐

  1. Android MUPDF阅读器放大模糊优化

    Android MUPDF阅读器放大模糊优化 目录 Android MUPDF阅读器放大模糊优化 目录 前言 MUPDF绘制原理 解决方法 绘制你需要大小的bitmap 更新View 结果 前言: 问 ...

  2. 轻快PDF阅读器阅读pdf文件步骤

    每天都要用到各种不同类型文档格式,像WORD这些文档格式已经是我们使用最多的格式了,所以说当我们碰见PDF格式时,经常会手忙脚乱的.其实也就是利用一个辅助工具就可以完成对PDF的阅读了,大家可能还不清 ...

  3. 手机端 阅读 pdf 文件 touchPDF.js

    touchpdf 中文API 下载地址: http://github.com/loicminghetti/touchpdf/archive/master.zip 一款在手机端 阅读pdf 文件的 js ...

  4. ipad iphone开发_如何在iPhone或iPad上阅读PDF文件

    ipad iphone开发 PDFs are something of a necessary evil. Sure, they're a handy way to preserve any docu ...

  5. Citavi阅读PDF文件中目录位置

    一般阅读pdf文件,如果文件内内嵌目录数据,可以根据目录,跳转到PDF文件的对应章节. citavi也不例外 citavi调出目录章节位置如下图所示: 1. 点击左下方的搜索框 2. 点击目录标志 即 ...

  6. android提取pdf中文字,使用iTextG從Android上的pdf文件中提取文本

    當我試圖從SD卡中讀取pdf文件並從中提取文本時,什麼也沒有發生. 沒有錯誤,沒有警告,通知,也沒有結果文件. 我將源文件和結果都存儲在設備的SD卡的根文件夾中. 你們能幫我解決這個問題嗎? 這裏是我 ...

  7. Android:使用MuPdf开源库阅读PDF文件

    一时兴起 因为自己前段时间一直在做故事会的一个客户端,当然是非官方版,主要是由于自己的兴趣所致.以前就挺喜欢看故事会的,所以就希望做一个故事会的客户端,在手机上随时随地地看.因为故事会的官方APP的体 ...

  8. android 阅读pdf 文件,Android实如今线阅读PDF文件

    介绍 最近项目有个须要,须要正在APP内在线阅读Office.PDF文件,要求不能下载.不能修改只能阅读.在查阅了相关的资料,主要参考该文章,发现Android实现解析Office文件有三种方式:an ...

  9. android base64转pdf文件的展示

    最近用到了关于android展示pdf文件,关于pdf的展示,Android现在是不支持webview直接打开的,只能借助外部浏览器获取第三方插件工具.又不能让用户去下载合适的浏览器,只能借用第三方的 ...

最新文章

  1. 三十一、具有快表的地址变换机构
  2. Xcode12.5的自定义代码块的使用和函数注释(学会事半功倍)
  3. Qt通过ODBC读取excel文件
  4. struts+hibernate+oracle+easyui实现lazyout组件的简单案例——OpSessionview实现
  5. (转)腾讯2011.10.15校园招聘会笔试题
  6. 《画解算法》3. 无重复字符的最长子串【python3丨简单】
  7. 信安教程第二版-第19章操作系统安全保护
  8. sql integer字置为空_请写一个函数来检查用户提交的数据是否为整数
  9. 2014-7 Andrew Ng 自动化所报告听后感
  10. Java 队列 Queue 使用说明
  11. opera价格设置(一)
  12. 内蒙古自治区包头市谷歌高清卫星地图下载
  13. Android系统优化
  14. 华为颇无奈,徕卡或离它而去而与小米合作
  15. 飞书接入ChatGPT,打造属于自己的智能问答助手
  16. elementPlus使用icon图标不显示解决方法
  17. python 费马检测
  18. linux 根目录结构
  19. 【软件推荐】身为高级unity工程师,电脑上的软件一览表,从工作顺序带你一览高级unity工程师所用的软件,如果高级是你的目标,这篇博客绝对不会让你失望
  20. 使用了eclipse10年之后,我终于投向了IDEA

热门文章

  1. AD域控exchange邮箱—powershell 程序暂停sleep 继续执行的方法
  2. 渗透测试攻击(一)Arp中间人攻击 伪装网关 截获 上网信息用户名密码
  3. 能让IT部门告别996的办公神器,你一定要知道
  4. 从腾讯入职到离职,我仅用了三周:做大数据的同事看不起做报表的
  5. canvas.drawBitmap()画出来的bitmap和原bitmap大小不同,有一部分缺失了
  6. 使用计算机在什么上传输,MODEM的作用是使计算机数据能在什么上传输
  7. 东北大学c语言及程序设计题库,东北大学c语言编程试题及其答案
  8. c++ 合并2个txt_多个表达矩阵文件合并
  9. 数据挖掘原理与算法 K-Means算法
  10. 【五级流水线CPU】—— 7. 协处理器访问指令(2条)