移动端PDF阅读器重排版效果对比-小白PDF阅读器与KOReader重排效果对比
PDF是一种跨操作系统平台的电子文件格式,它能在各种不同的平台上以相同的版式显示。很多扫描书籍或者电子书籍都会采用PDF格式存储。但是移动端由于屏幕的限制,以原版展示PDF会导致画面缩放严重,影响阅读体验。
小白PDF阅读器能在移动端自动重排版PDF页面,大大提升PDF在移动端的阅读体验。
有相同功能的阅读器还有基于开源项目k2pdfopt二次开发的软件如KOReader和国内同样基于k2pdfopt开发的带有重排功能的电子书阅读器。由于KOReader与国内带有重排功能的电子书阅读器的重拍效果基本一致,所以下面就只比较小白PDF阅读器与KOReader的重排效果了。
一、简单图文混排PDF页面重排对比

KOReader基本能实现简单图文混排页面的重排,但是在段落和有项目符号的地方重排效果还有待改进,小白PDF阅读器的重排效果对比来看要好很多。
二、复杂图文PDF页面重排对比

面对比较复杂的PDF页面,KOReader重排效果稍差,未能将被包围的“眼镜”图片区域识别出来并重新排版并且将图片标题排版错了,而小白PDF阅读器就能智能的将“眼镜”图片及小标题识别出来,并重新排版;同时还智能的识别了页面标题,并在重新排版时给与优化显示。在段落间隔以及文本间隔的处理方面,小白PDF阅读器更能接近原始页面的比例,效果更加自然舒适。
三、扫描质量较差的PDF重排版对比

这张是扫描质量较差的PDF页面,周围有干扰,并且页面倾斜;对比来看小白PDF阅读器的重拍版效果还是可以接受的,而KOReader阅读器的重排效果就差强人意了。通过这个页面可以看到小白PDF阅读器排版前自动矫正了倾斜页面并对C语言代码部分的重排效果做了特别的优化;基本上保留了原版的代码格式。
四、针对编程技术类书籍的重排版对比

这张PDF原图中有一段java代码,KOReader阅读器直接无视了这段代码给当成普通文本重拍版了,未能保留代码个缩进等格式,造成整体的重排效果比较混乱。小白PDF阅读器智能的识别了这段代码,并保持了原有代码的缩进等,并在重排版自动换行时考虑了整体的缩进情况,整体效果非常好。小白PDF阅读器针对编程类PDF书籍做了特别优化,能智能识别java、c\c++、c#、python、go、js等常见的编程语言和json、xml文本格式,在重拍版时会尽量保持原有格式。
五、针对论文类的多列文档的重排版比较

这个文档其实是很复杂的从上到下分为表头、表格及表格标题、左右分栏的文本、图表及标题、左右分栏的文本。通过对比可以发现KOReader阅读器排版效果非常不理想,标题混乱、未能正确识别表格、左右分栏的文本块也排版混乱。而小白PDF阅读器则表现非常好,正确识别了各种元素,并能很好的重排版。
六、试题类PDF重排版对比

小白PDF阅读器针对试题类的PDF页面做了专门优化,能自动智能识别单选多选等类型的试题页面,并在排版时优化显示效果,KOReader阅读器则没有任何优化,直接当成文本显示了,所以针对试题类的PDF文件,小白PDF阅读器的重排版效果要更好一些。
六、带有数学公式类PDF重排版对比

可能是由于左侧竖杠的干扰,KOReader阅读器直接已原版显示了,未能重新排版。小白PDF阅读器则表现优异,自动排除了左侧竖杠的干扰,能正确识别页面元素,并能智能识别数学公式在排版时优化显示。
通过对比两款能将PDF页面自动重排的阅读器的效果可以看出,小白PDF阅读器的排版显示效果要好于KOReader阅读器的,由于KOReader及一众国内能自动重排PDF页面的阅读器大部分都基于k2pdfopt开源项目,所以小白PDF阅读器的重排版功能,目前来看是效果最好的
移动端PDF阅读器重排版效果对比-小白PDF阅读器与KOReader重排效果对比的更多相关文章
- 学习使用LaTex排版文字输出为pdf(1)
学习用latex写我的简历. 我在ubuntu环境下,先下载所需软件,命令百度就可以. 先创建一个a.tex,写上 \documentclass{article} \usepackage{CJK} \ ...
- Pdf文件处理组件对比(Aspose.Pdf,Spire.Pdf,iText7)
目的 因为公司是做医疗相关软件的,所以经常和文档打交道,其中就包含了Pdf.医院的Pdf(通常是他们的报告)都千奇百怪,而我们一直以来都是在用一些免费且可能已经没人维护了的组件来处理Pdf,所以就经常 ...
- 在线打开,浏览PDF文件的各种方式及各种pdf插件------(MS OneDrive/google drive & google doc/ github ?raw=true)
在线打开,浏览PDF文件的各种方式: 1 Google drive&doc (国内不好使,you know GFW=Great Firewall) 1. google drive: 直接分 ...
- Kindle阅读产品体验报告-随时随地畅享阅读
产品入门-第一份产品体验报告Kindle阅读-随时随地畅享阅读时间:2018/11/18-11/22 Kindle阅读 一.产品概括 (1)体验环境 机型:荣耀8 系统:EMUI 8.0(Andr ...
- PDF解决方案(2)--文件转PDF
相关专题链接: PDF解决方案(1)--文件上传 PDF解决方案(2)--文件转PDF PDF解决方案(3)--PDF转SWF PDF解决方案(4)--在线浏览 前言:上一篇中讲到的文件上传,文件上传 ...
- 使用pdf.js实现前端页面预览pdf文档,解决了跨域请求
pdf.js主要包含两个库文件,一个pdf.js和一个pdf.worker.js,,一个负责API解析,一个负责核心解析 官网地址:http://mozilla.github.io/pdf.js/ 下 ...
- 【C#/VB.NET】 将PDF转为SVG/Image, SVG/Image转PDF
SVG是一种图形文件格式,它的英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形.它在放大或者改变尺寸的情况下其图形质量不会有所损失,且与 JPG 和 GIF 图像比起 ...
- WeasyPrint - Converts HTML + CSS to PDF - WeasyPrint converts HTML/CSS documents to PDF
WeasyPrint - Converts HTML + CSS to PDF - WeasyPrint converts HTML/CSS documents to PDF WeasyPrint c ...
- PDF如何设置书签,怎么在PDF上添加书签
PDF文件现在作为我们使用最多的一种办公文件,当然我们在使用PDF文件的同时还会需要编辑PDF文件,在使用一个PDF文件页数比较多的时候就需要添加书签,不然每次使用的时候都需要从头开始查找是很麻烦又头 ...
- PDF文件如何标注,怎么使用PDF标注工具
我们在使用文件的时候需要给文件的部分添加标注,能够更加直观的了解文件,但是有很多小伙伴们对于PDF文件怎么添加标注都不知道,也不知道PDF标注工具要怎么使用,那么下面就跟大家分享一下怎么使用PDF标注 ...
随机推荐
- Excel中制作目录的3种方法,你了解几种?
点赞再看,养成习惯:言之无文,行而不远. 微信搜索[亦心Excel]关注这个不一样的自媒体人. 本文 GitHub https://github.com/hugogoos/Excel 已收录,包含Ex ...
- C++ : 如何用C语言实现C++的虚函数机制?
前言 在 googletest的源码中,看到gtest-matchers.h 中实现的MatcherBase 类自定义了一个 VTable,这种设计实现了一种类似于C++虚函数的机制.C++中的虚函数 ...
- Google Ads – 大杂烩
广告相互竞争, 自己打自己? About similar keywords in a Google Ads account 如果用户的搜索能匹配到广告 Campaign 中多个广告的话, 会怎么样? ...
- Git 客户端基本使用及新手常见问题
Git作为一个版本管理工具,在企业中的应用越来越普遍.作为一个测试工程师,不可避免会需要接触到Git的相关操作,以下整理Git客户端的常见操作,以及应用中新手常碰到的一些问题. 1.环境安装及配置 G ...
- 线段树 transformation——hdu 4578
问题描述: 给定一个数列,数列中所有元素都初始化为0,对其执行多种区间操作 操作1:add修改:对区间[L,R]内的所有数加c 操作2:multi修改:对区间[L,R]内所有数乘以c 操作3:chan ...
- [C++] Rander
注 这个Rander对单个数据的平均分散不太优秀,但是获取大量数据十分平均 当前版本 2.0 for Windows 功能 int rander::reset() 按默认大小重置随机数序列,返回默认大 ...
- vue的计算属性computed和监视属性waatch的区别
共同的:都是用于监听数据变化的属性: 计算属性:必须有返回值return ,依赖其它属性值,其它属性值发生变化的时候就会重新计算 : 监视属性:每当数据变化的时候就会触发执行,watch有两个新值和旧 ...
- 03-jsx中使用js表达式
// 在jsx中使用 js 表达式 /// 通过一个 {} 展示变量即可 vue 中使用 {{}} 展示js表达式 // 什么是js表达式 有结果的 import reactDom from &quo ...
- kubernetes拉取私有镜像仓库的镜像
kubernetes拉取私有镜像仓库时需要使用镜像仓库的账号密码 方式: apiVersion: v1 kind: Pod metadata: name: private-reg spec: cont ...
- SpringBoot进阶教程(八十二)Spring Security图形验证码
在之前的博文<SpringBoot进阶教程(八十)Spring Security>中,已经介绍了在Spring Security中如何基于formLogin认证.基于HttpBasic认证 ...