老实说,Kindle 对于PDF文件是很不友好的,经常会出现各种排版问题,所以,对电子阅读器方面比较了解的同学都知道,如果需要经常用阅读器查看PDF文件的话,最好还是买一款更大屏幕的设备,而Kindle最大的也就是7寸的Kindle oasis 2;

不过,就算是经常看mobi等格式电子书的小伙伴们,偶尔也会有要看PDF的需要,所以,Kindle也并不是没有优化PDF阅读的方法;

横屏阅读

首先,介绍一个不少小伙伴都知道的小技巧——横屏阅读;

因为很多 PDF 文档大多是以扫描版为主,适配 Kindle 屏幕大小的 6 寸版的 PDF 文档十分稀少,这就导致在用 Kindle 阅读 PDF 文档时字号偏小。

但如果换成横屏阅读的话,用Kindle屏幕的长对应PDF文件的宽,尺寸就比较相符了,阅读体验自然就能好很多;

横屏操作:

①、打开一个PDF文件

②、点击屏幕上方,弹出工具栏;

③、点击【Aa页面显示】,在方向中选择横屏,同时页边距也最好选择边距最小;

对于一些本身字体就小的PDF文件,横屏之后,字体看起来还是会相对较小,但起码不会影响正常阅读;

另外,对于文中一些比较细节的东西,还可以用缩放功能,将内容放大查看;

转换为文字版PDF

除了Kindle设置横屏阅读之外,我们还可以从PDF文件本身着手,PDF文件在Kindle上阅读体验不佳,主要是集中于扫描版文件,但对于文字版的PDF,我们是可以通过邮件推送时在邮件主题填写“convert”的方式,让亚马逊服务器将文件转换成适合 Kindle 阅读的排版格式的。

所以,对于扫描版的PDF,我们可以先将其转换为文字版本,然后通过邮件推送的方式,传到Kindle上;

关于如何将扫描版PDF转换为文字版,市面还是有许多相关软件的,用什么看大家自己的习惯,静读君这里也介绍一款强大的 OCR 软件给大家参考参考:

ABBYY FineReader

这是一款真正的专业 OCR,不仅支持多国文字,还支持彩色文件识别、自动保留原稿插图和排版格式以及后台批处理识别功能;不过正版软件需要收费;

它的使用很简单,只需要打开 PDF 文档即可自动识别(除了 PDF 格式还支持其他各种各样的图片或文档格式)。

如下图所示,最左侧是所有页码,右侧有两栏,左栏是原稿,右栏为识别后的文档。

你可以在上方的工具栏中选择不同的“文档布局”以更改识别后文档的版式,这些版式对应着不同的用途,排版也不一样,比如 Word 版式会尽可能精准的复刻原稿地版式,而 epub 格式则更接近于没有任何排版的纯文档格式。

如下图所示,在识别后的文档中,有些青色高亮标注字词,这些是软件“拿不准”的字词,你可以点击界面右上角的“验证文本”,可以根据提示一个一个地修正可能存在识别错误的字词。

处理完毕后,点击上方工具栏中的“保存”,即可把转换好的文档存储成图文版本。

在“保存”的下拉选项中,ABBYY FineReader 还专门为 Kindle 准备了推送项,不过需要注意的是它借助的是你电脑中的邮箱客户端,如果你没有安装邮箱客户端或者没有设置好邮箱客户端,是无法使用的。

需要注意的是,ABBYY FineReader识别PDF的精准度取决于PDF本身的清晰度,如果清晰度不够高的话,就会导致扫描后错字频出,而且对数学公式、编程代码的识别并不怎么精准,所以静读君推荐最好用于识别纯图文形式的、扫描精度足够高的文档。

利用PDF重排工具

如果你还不满足于横屏阅读与转换为文字版的方法的话,你也可以试试借用第三方工具,对PDF文件进行重新排版,静读君给大家介绍一个好用的PDF重排工具——K2pdfopt;这是一款在电脑桌面环境运行的工具;

K2pdfopt 是一个开源软件。可以优化 PDF/DJVU 文件以适配移动阅读设备(比如 Kindle)以及智能手机。支持 Windows、Mac OS X、Linux 系统,其中 Windows 系统集成了一个带界面的版本。

先来看看K2pdfopt的重排效果:

图片来自书伴

可进入 K2pdfopt官网下载或者后台关注静读君的微信号:静读空间公众号(jingduzone) 回复“PDF重排”获取百度云下载;

注意:在使用 K2pdfopt 时,请避免路径、文件名出现中文字符。

操作步骤:

1)点击“ADD FILE”或直接通过鼠标将 PDF 文档导入到“File list”。支持导入多个 PDF 文档。

2)在“Env. var”栏填写转换后文档的输出路径。留空代表输出转换后的文档到源文件所在目录。

3)在“Additional opions”栏填写“-ws -1”。据网友经验,填写此项可改善排版。

4)右上角选择设备“Device”。每一种设备的尺寸和 DPI 是不同的,请根据你的设备选择。若没有你想选的设备选项,可以选择与你的设备参数相同的其他设备,比如:kpw 3和 kv屏幕参数相同、558/499入门版可以选kindle1-5;或者直接在下方自定义输入设备参数。

5)选择转换模式“Conversion Mode”,一般使用默认“default”即可。可在左侧面板微调参数。

6)设置好后可点击右下角的“Preview”预览效果。最后点击“Convert All Files”进行开始转换。

因为仅有 Windows 版 K2pdfopt 集成了带界面的 GUI 版本,所以如果是苹果用户的话,就需要使用命令行版本进行操作;

1、下载 K2pdfopt 到桌面;

2、打开“终端”,输入 cd ~/desktop;

3、接着输入 chmod 755 k2pdfopt,按回车键将 K2pdfopt 变成可执行文件;

4、双击运行 K2pdfopt;

5、可根据提示填写参数。比如“-ws -1”,回车确认(使用默认设置可忽略此步);

6、然后把 PDF 文档拖放到命令提示符上,点击回车确认。然后再次点回车开始转换;

7、最后生成名称类似“file_k2opt.pdf”的最终文档。

其实,还有一个十分好用的PDF工具——Koreader,不过这个工具必须要先越狱才能使用,所以,静读君这里就先不做详述了,日后有需要的话,再为大家介绍!

Kindle其实并不适合经常看PDF文件的用户,但如果只是偶尔有阅读PDF需求的话,Kindle还是可以满足你的;希望上述的方法能够帮到你;

原文地址:https://www.jianshu.com/p/4e62d5575881

用Kindle阅读PDF最简单的3个方法!的更多相关文章

  1. 实现在线阅读pdf功能--php

    在网上找了很久,想要实现一个在线阅读word,pdf文件的功能,网上的资料很多,但是提到真正怎么实现的比较少.现在我来简单说明一下,我实现的过程. 我现在只能实现在线阅读pdf(将word等转换成pd ...

  2. NTKO控件在阅读PDF时,显示DEMO的问题

    NTKO控件在阅读PDF时,显示DEMO的问题, 原因是加载了以前的DEMO版本的控件.解决办法是: 在命令行中执行命令: regsvr32 /u NtkoOleDocAll.DLL 卸载老版本的控件 ...

  3. Android MuPDF 阅读PDF文件

    MuPDF是一款轻量级的开源软件,可以用来阅读PDF文件.下载完源代码以后,想要运行成功,除了Android SDK之外,还需要Android NDK环境,因此有点麻烦. 但是一旦安装完必须的环境以后 ...

  4. 7款Linux下阅读PDF的阅读器。

    5款Linux下阅读PDF的阅读器.1. Mupdf:link 2. Adobe Reader:link 3. Foxit Reader:link 4.Evince:link 5. Okular:li ...

  5. 开源:矿Android新闻client,快、小、支持离线阅读、操作简单、内容丰富,形式多样展示、的信息量、全功能 等待(离开码邮箱)

    分享:矿Android新闻client.快.小.支持离线阅读.操作简单.内容丰富,形式多样展示.的信息量.全功能 等待(离开码邮箱) 历时30天我为了开发这个新闻clientAPP,下面简称觅闻 ht ...

  6. 在线阅读PDF文件js插件——pdf.js

    最近接到一个需求大致是这样的,要求在移动端和pc端能够在线阅读pdf文件,类似百度文库的功能. 首先想到的就是插件,github(全球最大的男性交友网站- -恩)上一大堆啊,首先找到一个PDFobje ...

  7. App阅读pdf和扫描二维码功能

    在之前开发的Android手机App中,需要实现阅读pdf和扫描二维码的功能,在github 上找到大牛封装好包,亲测可用. 阅读pdf: https://github.com/barteksc/An ...

  8. Kindle阅读产品体验报告-随时随地畅享阅读

    产品入门-第一份产品体验报告Kindle阅读-随时随地畅享阅读时间:2018/11/18-11/22   Kindle阅读 一.产品概括 (1)体验环境 机型:荣耀8 系统:EMUI 8.0(Andr ...

  9. R语言:用简单的文本处理方法优化我们的读书体验

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html 前言 延续之前的用R语言读琅琊榜小说,继续讲一下利用R语言做一些简单的文本处理.分词的事情.其实 ...

随机推荐

  1. python学习之路(5)

    条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age=20 if age>=18: ...

  2. Vue学习日记(二)——Vue核心思想

    前言 Vue.js是一个提供MVVM数据双向绑定的库,其核心思想无非就是: 数据驱动 组件系统 数据驱动 Vue.js 的核心是一个响应的数据绑定系统,它让数据与DOM保持同步非常简单.在使用 jQu ...

  3. C++入门经典-例2.2-使用格式输出函数printf

    1:使用printf函数对不同类型变量进行输出,%符号,代表输出类型,\n代表换行,代码如下: // 2.2.cpp : 定义控制台应用程序的入口点. // #include "stdafx ...

  4. Eclipse控制台输出中文乱码问题的解决

    啥都不说,上图: 1.console控制台打印乱码 2.右键: Run As --> Run Configurations 3.找到common项,在“Encoding”栏,看到当前用的是默认“ ...

  5. Spring之AOP配置

    特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...

  6. Error running 'Tomcat 9.0.241': port out of range:-1

    这种情况很容易解决,别急. 修改默认配置,tomcat的server.xml检查一下,端口不能是-1, 一般会选80,或者1-65535之间的任意一个整数 路径:C:\Program Files\Ap ...

  7. 布尔 kotlin(4)

    布尔布尔用 Boolean 类型表示,它有两个值: true 和 false .若需要可空引用布尔会被装箱.内置的布尔运算有:||       – 短路逻辑或&&     – 短路逻辑 ...

  8. UVa 839 -- Not so Mobile(树的递归输入)

    UVa 839 Not so Mobile(树的递归输入) 判断一个树状天平是否平衡,每个测试样例每行4个数 wl,dl,wr,dr,当wl*dl=wr*dr时,视为这个天平平衡,当wl或wr等于0是 ...

  9. 等式变换java解法

    输入一个正整数X,在下面的等式左边的数字之间添加+号或者-号,使得等式成立. 1 2 3 4 5 6 7 8 9 = X 比如: 12-34+5-67+89 = 5 1+23+4-5+6-7-8-9 ...

  10. nginx不记录指定文件类型的日志

    1.指定记录文件日志记录的内容. vim /usr/local/nginx/conf/nginx.conf如下部分: log_format dd '$remote_addr $http_x_forwa ...