老程序员分享: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();

相关文章
|
数据库 Perl
分享几本 O'Reilly 出品的免费电子书
有一些书,如果你不是行内人士,那么可能你一辈子都不会看。有一些出版社,就是专门做这种书,比如国内的机工华章,比如国外的 O'Reilly,都是专注计算机和软件行业二十年的好出版社。 这两家出版社的书,都是颇有特色个性鲜明。华章的图书,我在大学期间读了很多,以计算机科学领域的基础和经典居多,这套书在
12165 0
|
1月前
|
机器学习/深度学习 前端开发 JavaScript
230+本图灵编程高清文字版无水印电子书合集【制作不易,点赞收藏❤️】
今日精选,200余本图灵出版的高质量编程电子书,覆盖编程、系统架构、算法及机器学习等热门领域,助你全面提升技术能力。无论你是初学者还是资深开发者,都能从中找到适合自己的学习资源,从《Python编程:从入门到实践》到《深度学习入门》,每一本书都将是你技术成长道路上的良师益友,帮助你在瞬息万变的技术浪潮中站稳脚跟,稳步前行。
35 2
|
5月前
|
Web App开发 JavaScript
技术经验解读:【原创开源项目】EPUBBuilder一款在线的epub电子书编辑工具
技术经验解读:【原创开源项目】EPUBBuilder一款在线的epub电子书编辑工具
118 0
[视频]微课设计零基础入门 | 7.微课PPT的制作《用部首查字法查字典》
ppt只是一种可选的媒介,完全可以用其他工具代替。在后面的课程中,我们还会教大家用动画来制作微课。但由于大部分老师都对ppt熟悉,所以我们这里还是用ppt来做演示。
80 0
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版地址
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
89 0
《小程序开发不求人电子书》电子版地址
《长安十二时辰》电子版下载地址
《长安十二时辰》一经播出便红遍全网,从智能算法到音视频创新技术,从智能档的技术挑战到高可用的媒资平台,成就这华丽视效的爆款背后,优酷技术都用到了哪些“武林秘籍”?
347 0
《长安十二时辰》电子版下载地址
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
138 0
《小程序开发不求人电子书》电子版
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版下载
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
134 0
《小程序开发不求人电子书》电子版下载
|
开发框架 小程序 开发工具
《小程序开发不求人电子书》电子版下载地址
《小程序开发不求人》深入浅出,结构清晰,语言诙谐生动,帮助读者快速掌握小程序开发技能。
95 0
《小程序开发不求人电子书》电子版下载地址
|
人工智能 自然语言处理 小程序
写作神器!终于可以写出完美、高逼格的文章了
对于经常和文章创作打交道的我来说,最让我头痛的一件事情就是文章纠错
写作神器!终于可以写出完美、高逼格的文章了