老程序员分享:PDFViewer电子书阅读器

简介: 老程序员分享:PDFViewer电子书阅读器

PdfViewer是一款属性和接口全面的安卓电子书插件


地址:


依赖:implementation 'com.github.barteksc:android-pdf-viewer:3.2.0-beta.1'


[/span>com.github.barteksc.pdfviewer.PDFView


android:id="@+id/pdfView"


android:layout_Width</span>="match_parent"


android:layout_Height</span>="match_parent"/>


pdfView.fromUri(Uri)


or


pdfView.fromFile(File)


or


pdfView.fromBytes(byte【】)


or


pdfView.fromStream(InputStream) //代码效果参考:http://www.lyjsj.net.cn/wx/art_23881.html

// stream is written to bytearray - native code cannot use Java Streams

or


pdfView.fromSource(DocumentSource)


or


pdfView.fromAsset(String)


.pages(0, 2, 1, 3, 3, 3) // all pages are displayed by default


.enableSwipe(true) // allows to block changing pages using swipe


.swipeHorizontal(false)


.enableDoubletap(true)


.defaultPage(0)


// allows to draw something on the current page, usually visible in the middle of the screen


.onDraw(onDrawListener)


// allows to draw something on all pages, separately for every page. Called only for visible pages


.onDrawAll(onDrawListener)


.onLoad(onLoadCompleteListener) // called after document is loaded and starts to be rendered


.onPageChange(onPageChangeListener)


.onPageScroll(onPageScrollListener)


.onError(onErrorListener)


.onPageError(onPageErrorListener)


.onRender(onRenderListener) // called after document is rendered for the first time


// called on single tap, return true if handled, false to toggle scroll handle visibility


.onTap(onTapListener)


.onLongPress(onLongPressListener)


.enableAnnotationRendering(false) // render annotations (such as comments, colors or forms)


.password(null)


.scrollHandle(null)


.enableAntialiasing(true) // improve rendering a little bit on low-res screens


// spacing between pages in dp. To define spacing color, set view background


.spacing(0)


.autoSpacing(false) // add dynamic spacing to fit each page on its own on the screen


.linkHandler(DefaultLinkHandler)


.pageFitPolicy(FitPolicy.WIDTH) // mode to fit pages in the view


.fitEachPage(false) // fit each page to the view, else smaller pages are scaled relative to largest page.


.pageSnap(false) // snap pages to screen boundaries


.pageFling(false) // make a fling change only a single page like ViewPager


.nightMode(false) // toggle night mode


.load();


推荐使用:


pdfView.fromFile(new File(filePath))


.defaultPage(0)


.enableAntialiasing(true)


.enableDoubletap(false)


.onLoad(new OnLoadCompleteListener() {


@Override


public void loadComplete(int nbPages) {


Log.d(TAG, "loadComplete: ok!");


}


})


.onRender(new OnRenderListener() {


@Override


public void onInitiallyRendered(int nbPages) {


}


})


.onPageChange(new OnPageChangeListener() {


@Override


public void onPageChanged(int page, int pageCount) {


Log.d(TAG, "onPageChanged: 当前是第"+page+"页 总共"+pageCount);


}


})


.onPageScroll(new OnPageScrollListener() {


@Override


public void onPageScrolled(int page, float positionOffset) {


}


})


.load();


pdfView.fromFile(new File(filePath))


.enableSwipe(true) // 屏幕滑动


.enableDoubletap(false) //禁双击


.spacing(10) //页面之间距离 dp


.enableAntialiasing(true)


.pageFitPolicy(FitPolicy.WIDTH) //模式来适应视图中的页面


.pageSnap(true) //将页面对齐到屏幕边界


.nightMode(false)


.load();

相关文章
|
2天前
|
Web App开发 JavaScript
技术经验解读:【原创开源项目】EPUBBuilder一款在线的epub电子书编辑工具
技术经验解读:【原创开源项目】EPUBBuilder一款在线的epub电子书编辑工具
|
11月前
|
Kubernetes Cloud Native 算法
程序员必读十大电子书
福利大放送,程序员必读十大电子书免费读啦,快来一起学习吧!
|
8月前
|
人工智能 边缘计算 安全
带你读《看见新力量》第七期电子书——序言
带你读《看见新力量》第七期电子书——序言
|
运维 Cloud Native 安全
年度最受欢迎电子书合集
年度最受欢迎电子书合集来啦!
年度最受欢迎电子书合集
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版地址
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
70 0
《小程序开发不求人电子书》电子版地址
《长安十二时辰》电子版下载地址
《长安十二时辰》一经播出便红遍全网,从智能算法到音视频创新技术,从智能档的技术挑战到高可用的媒资平台,成就这华丽视效的爆款背后,优酷技术都用到了哪些“武林秘籍”?
277 0
《长安十二时辰》电子版下载地址
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
116 0
《小程序开发不求人电子书》电子版
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版下载
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
105 0
《小程序开发不求人电子书》电子版下载
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版下载地址
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
78 0
《小程序开发不求人电子书》电子版下载地址
|
数据库 数据安全/隐私保护 Windows
科研狗文献管理阅读必备的两大神器
科研狗文献管理阅读必备的两大神器
289 0
科研狗文献管理阅读必备的两大神器