Android 加载PDF文件的使用

原文链接https://www.jianshu.com/p/608b270a1ab8

1.1 PDF View的使用

  1. 首先我们需要加载依赖库
    compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'
  1. 创建本地文件assets,存放本地的文件 sample.pdf。这里先只讲一下本地的,在线的稍后再提。
image.png
  1. 在layout文件中编写布局文件
 <com.joanzapata.pdfview.PDFView
             android:id="@+id/pdfview"
             android:layout_width="match_parent"
             android:layout_height="match_parent" />

  1. 代码中引用

例子中的模板是这样的

  pdfView.fromFile(file)   //设置pdf文件地址
                .defaultPage(1)         //设置显示第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();

  • pages是可选的,它允许您根据需要过滤和排序PDF的页面
  • onDraw也是可选的,并且允许您在当前页面上方的提供的画布上绘制某些东西
    里面的属性都在代码中有注释,按照你的要求自己定制。

代码中的是这样的

public class MainActivity extends AppCompatActivity {
<span class="hljs-Meta">@Override</span>
<span class="hljs-function"><span class="hljs-keyword">protected</span> <span class="hljs-keyword">void</span> <span class="hljs-title">onCreate</span><span class="hljs-params">(Bundle savedInstanceState)</span> </span>{
    <span class="hljs-keyword">super</span>.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    PDFView pdfView = (PDFView) findViewById(R.id.pdfview);
    <span class="hljs-comment">// 这个测试例子中,assets目录下sample.pdf</span>
    <span class="hljs-comment">// 缺省把该pdf定位到第一页。</span>
pdfView.fromAsset(<span class="hljs-string">"sample.pdf"</span>)
            .defaultPage(<span class="hljs-number">1</span>)
            .onPageChange(<span class="hljs-keyword">new</span> OnPagechangelistener() {
                <span class="hljs-Meta">@Override</span>
                <span class="hljs-function"><span class="hljs-keyword">public</span> <span class="hljs-keyword">void</span> <span class="hljs-title">onPageChanged</span><span class="hljs-params">(<span class="hljs-keyword">int</span> page, <span class="hljs-keyword">int</span> pageCount)</span> </span>{
                    <span class="hljs-comment">// 当用户翻页时候将回调。</span>
                    Toast.makeText(getApplicationContext(), page + <span class="hljs-string">" / "</span> + pageCount, Toast.LENGTH_SHORT).show();
                }
            }).load();
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...