你的位置:首页 > 操作系统

[操作系统]android 显示 PDF 文件


1、开源项目地址 :

  https://github.com/JoanZapata/android-pdfview

 

2、引用

    compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'

 

3、布局文件

<?"1.0" encoding="utf-8"?><RelativeLayout "http://schemas.android.com/apk/res/android"  ="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.PDFView    android: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 ;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    pdfView = (PDFView) findViewById( R.id.pdfView );    //从assets目录读取pdf     displayFromAssets("bao.pdf");    //从文件中读取pdf    displayFromFile( 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   */  @Override  public void onPageChanged(int page, int pageCount) {    Toast.makeText( MainActivity.this , "page= " + page +        " pageCount= " + pageCount , Toast.LENGTH_SHORT).show();  }  /**   * 加载完成回调   * @param nbPages 总共的页数   */  @Override  public void loadComplete(int nbPages) {    Toast.makeText( MainActivity.this , "加载完成" + nbPages , Toast.LENGTH_SHORT).show();  }  @Override  public 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