转换pdf或txt文档为kindle电子书

有些书找不到适合在kindle阅读的版本, 很多只有pdf和txt格式, 在kindle上看实在是太痛苦。 可以用一些现成的免费工具通过简单的步骤把它们转换成mobi格式,并加上目录。

前提条件:

  1. 原始文档内容要有基本的格式,比如要有换行。
  2. 如果要生成目录,每一段的标题必须有某种规律,比如单独为一行,或者统一有某个前缀, 比如“Unit 1 ....”, “Unit 2 ....”, “第一章 ....”, “第二章 ....”等。
  3. pdf文件先把所有内容复制出来保存成txt。
  4. 安装免费的电子书转换软件 calibre, 完全免费而且支持windows/mac os/linux
  5. 安装一个支持正则表达式替换的文本编辑器,我用的是 vim

步骤:

  1. 如果要生成目录,首先要为每个段落的标题加上特殊的html标签, 比如在vim中可以用如下命令:

     :%s/^\(UNIT\s\+\d\{1,3}\.*\)/<h3 name="title">\1<\/h3>/g
    

    这样可以把所有类似UNIT 1 Section 1, UNIT 2 Section 2 ... UNIT 103 Section 103的行替换成<h3 name="title">UNIT 1 Section 1</h3>等对应的h3标签.

  2. 接下来把文本文件的换行符号替换成<br/>, Vim下可以用:%s/\n$/<br\/>/g
  3. 在txt文件头和尾分别加上<html><head>....</head><body></body></html>, 然后把文件另存为html文档。
  4. 打开calibre, 导入刚才处理好的html文件,右键单击导入的文件选择生成目录。 这时候需要告诉calibre哪些html标签应该生成为目录项, 指定name为“title“的h3标签即可,界面操作很简单,这里就不具体说了。

今天用这个方法转换了《English Grammar In Use》, 总算免除了这几天看txt版的痛苦,可以比较方便的在做完每章的习题以后跳到附录去对比正确答案了。

Comments

  1. Fernando

    You've impressed us all with that ptosnig!

Leave a comment

*
* (Won't be published)
Common tasks
Related posts