老实说,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. js多种方法取数组的最后一个元素

    一: pop()方法 pop()方法,删除数组最后一个并返回该元素 利用这个方法可以取到数组的最后一个,同理shift()可以取到数组的第一个(shift()删除数组第一个并返回该元素) var ar ...

  2. Android_(服务)Vibrator振动器

    Vibrator振动器是Android给我们提供的用于机身震动的一个服务,例如当收到推送消息的时候我们可以设置震动提醒,也可以运用到游戏当中增强玩家互动性 运行截图: 程序结构 <?xml ve ...

  3. 使用R进行方差分析

    eff=c(58.2,52.6,56.2,41.2,65.3,60.8,49.1,42.8,54.1,50.5,51.6,48.4,60.1,58.3,70.9,73.2,39.2,40.7,75.8 ...

  4. 一、mybatis的插件介绍

    摘自:https://www.cnblogs.com/qm-article/p/11785350.html mybatis的插件机制   一.mybatis的插件介绍 关于mybatis的插件,我想大 ...

  5. sshd_config已修改,ssh还是无法远程问题解决

    环境:vmware下的debian10.2 /etc/sshd/sshd_config 配置文件已经完成修改开启允许root账号登录配置 ssh远程返回如下信息: [Administrator.NIH ...

  6. leetcode-easy-trees-Maximum Depth of Binary Tree

    mycode  92.69% # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x ...

  7. pandas分组运算(groupby)

    1. groupby() import pandas as pd df = pd.DataFrame([[1, 1, 2], [1, 2, 3], [2, 3, 4]], columns=[" ...

  8. redhat下配置SEED DVS6446开发环境1

    Linux NFS服务详解   1.什么是NFS(Network FileSystem)  NFS 就是 Network FileSystem 的缩写,最早之前是由 Sun 所发展出来的.他最大的 功 ...

  9. OpenStack RPM Sample 解析

    目录 文章目录 目录 前言 RPM 打包环境安装 RPM 打包流程 OpenStack RPM SPEC Sample RPM 升级/回退 前言 软件功能升级,尤其是 Python 这类解析型语言的软 ...

  10. 阶段3 2.Spring_10.Spring中事务控制_5 spring事务控制的代码准备

    创建一个工程,只搭建环境不做配置.等配置的时候把这个项目相关的代码再复制到新项目里面 jar包的打包方式 导入包 事务控制也是基于AOP的.所以这里导入aspectjweaver 复制jdbcTemp ...