kindle下英文书的mobi资源很多,但是中文版的mobi资源很少,大多需要自己制作来完成。自从拿到kindle后,很是折腾了一把,小有心的,和大家分享一下。帖子的内容主要集中在如何通过calibre来自制mobi格式的书籍,集中在txt到mobi的过程
需要使用到的软件
calibre, 下载地址 http://calibre-/download
kindle for pc, http://kindleforpc./30427/KindleForPC- 用来检查输出后的效果,calibre内置的阅读器速度太慢。
一个好一点的文本编辑器,要支持两个功能:regex(正则表达式)和unicode格式转换功能,我现在用的是emeditor
文本处理/排版工具软件
GIDOT TYPESETTER, esetter/
Textforever,可能会用到,主要用于html文件到txt的整理工作 onghorse/software/#TextForever
我在这里举几个例子大家,按照我的步骤操作一下,你基本上就会使用calibre了
第一个例子
话说我今天早上想起来,突然想看一本武侠小说,于是就去到一个我经常逛的网站:好读,这个网站以精排版的电子书闻名。好,我们随便挑一本书,古龙的《欢乐英雄》(/?M=Share& P=0604)。好读支持的格式是PDB的,但是pdb的格式不能在kindle上直接打开,需要转换。先装一个pdb for calibre的插件,http://kanru./calibre-haodoo/。
我们在calibre当中把下载的pdb文件拖到calibre中去,点击工具栏上的“convert books", 左上角是输入格式,右上角是输出格式,如果你需要不高的话,直接点击ok,就是直接转成了mobi格式了
好的,我们用kindle for pc打开刚才转换好的书,看看效果。
虽然在转换的过程当中完美地将TOC(目录)输出,但是从kindle for pc里面看到的效果有两点我不太满意,
繁体,看起来还是有点费劲
首行没有两字缩进
看来还是需要自己动手,重新排版一下,好吧,这次我们选择输出成txt格式的
用emeditor打开转换好的txt文件,发现还存在问题
繁体
首行没有缩进
段落之间有空行
ok, 把文件拷贝到GIDOT TYPESETTER中去,选择左下角的“简体字”,再点击工具栏中的“排版”,然后再拷贝回emeditor中去。
经过GIDOT TYPESETTER排版的文本特点:
首行缩进是两个全角空格
段落之间没有空行
为什么我要强调中文空格呢?calibre在转换的时候会自动忽略首行缩进的掉半角空格,为了保证首行两字缩进,我们用全角空格来控制
好,下面我们对排版好的文本进行处理。
好的书是自带toc(目录),所以我们要在txt当中加入标记,让calibre在转换的过程当中遇到相应标记时自动生成toc。
calibre支持txt中的markdown (/projects/markdown/syntax, 什么是markdown,请自己google)语法标记。简单来说calibre可以生成三级目录,每一级目录标记可以使用html当中 h1,h2,h3....等等。而使用markdown语法在txt格式当中进行html标识时,每一行开头以# (#空格)对应h1, ## (##空格)对应h2,以此类推。
ok,我们现在就需要在每一章标题前面加入#或者##,在emeditor当中按ctrl+h,
在寻找栏中填入\s\s第(一|二|三|四|五|六|七|八|九|十|百|[0-9])+(章)\s+.*,这是正则表达式的语法,\s表示空格, \s\s表示两个空格, (一|二|三|四|五|六|七|八|九|十|百|[0-9]),表示在第和章之间只要符合(一|二|三|四|五|六|七|八|九|十|百|[0-9])里面任一个字符即可,.*表示任意字符,所以\s\s第(一|二|三|四|五|六|七|八|九|十|百|[0-9])+(章)\s+.*表示只要以两个空格开始的第(*)章后面跟空格的任意文字串
在替换栏中输入##\0, ##是h2的表示, \0表示寻找到符合正则表达式的字符串。点击replace all,所有章节名前面都加入了##标记
好,下一步我们来保存。calibre在转换中文文档时需要是unicode格式,我们在emeditor中file-->save as,在下面的encode当中选择unicode 8即可
在calibre删除掉刚才的pdb格式的欢乐英雄,然后把刚刚保存的文本文件拖到calibre当中
calibre电子书制作教程 来自淘豆网m.daumloan.com转载请标明出处.