介绍
最近项目有个需要,需要正在APP内在线阅读Office、PDF文件,要求不能下载、不能修改只能阅读。在查阅了相关的资料,发现Android实现解析Office文件有三种方式:
1.后台统一转换文档格式,安卓端只预览一种格式文档。
2.在安卓端完成文档转换
3.第三方付费产品中
本人选择了第一种方式实现:openoffice + jodconverter将office文档转换为pdf格式。具体方式百度很多教程。
Android 端实现
android端只要使用 PDFView 第三方库实现在线阅读,具体实现方式如下:
导入依赖
compile 'com.github.barteksc:android-pdf-viewer:3.1.0-beta.1'
核心代码
pdfView.fromStream(PDFIs) // 已流的方式读取文件//.nightMode(true) // 夜间模式//.enableAnnotationRendering(false)//呈现注释(例如注释,颜色或表单)/** 以下配置实现 ViewPage */ .swipeHorizontal(true) //pdf文档翻页是否是垂直翻页,默认是左右滑动翻页 .pageSnap(true) ///捕捉页面到屏幕边界 .autoSpacing(true) //在屏幕上添加动态间距以适应每个页面 .pageFling(true) // 像viewPage 一样效果 .enableSwipe(true)//是否允许翻页,默认是允许翻页 .defaultPage(0) //开始页数 .load();
注:3.1.0的依赖优化了像 ViewPage 一样翻页。