如何制作电子书的目录(txt)?

需要软件:

calibre

emeditor

GidotTypesetter排版助手

制作步骤

把不论原文件是什么格式,都先在Calibre里一律转成txt导入GidotTypesetter进行排版,然后保存;

复制文本粘贴入emeditor,在emeditor当中按ctrl+h,在寻找栏填入 \s\s第(一|二|三|四|五|六|七|八|九|十|百|[0-9])+(章)\s+.* ,在替换栏中输入##\0。这是正则表达式的语法,\s表示空格, \s\s表示两个空格, (一|二|三|四|五|六|七|八|九|十|百|[0-9]),表示在第和章之间只要符合(一|二|三|四|五|六|七|八|九|十|百|[0-9])里 面任一个字符即可,.*表示任意字符,所以\s\s第(一|二|三|四|五|六|七|八|九|十|百|[0-9])+(章)\s+.*表示只要以两个空格 开始的第(*)章后面跟空格的任意文字串, ##是h2的表示, \0表示寻找到符合正则表达式的字符串。点击replace all,所有章节名前面都加入了##标记。

emeditor中file–>save as,在下面的encode当中选择unicode 8。

把文本导入calibre,点击转换格式。编辑图书基本信息。接下来设置格式,注意事项:

书籍的封面,可以去douban找

点击look&feel, 选中”Remove spacing between paragraphs”, 这个选项确保在转换过程中去掉段与段之间的空行。本来拍过版的text段间是没有空行的,但是为了保险起见,我们还是选中这个选项的好。

如果不选中这个选项,原有的段间空行会被保留,且首行缩进通过indent size来控制,这是单位是em,不大好刚刚好控制在两个汉字的标准(因为kindle当中的字体是可以放大缩小的),所以我们通过排版,在每行首行前加入两个全角空格来保证首行缩进

page setup这里面没有什么好设置的,因为epub, lit, mobi都会随着屏幕的大小、字号的大小来自动调整,我们还是循例选择kindle

structure dection这里选择默认的,唯一要注意的就是下方的insert page breaks before… 默认的设置是在h1,h2标记前加入强行分页符,如果你不想这样的话,自己修改

table of contents, 设置目录项的标识

因为这次我们处理的文件只有一层目录,而且以## (h2)来进行标识,我们在level 1 toc里面填入//h:h2,如果有两层目录的话,那么就在level2 里面填入对应的//h:h1, //h:h3之类的tag

txt input里面一定要选中两个:

treat each line as paragraph, 把输入当中的文本文件当中每一个回车符前的内容当作一段来处理(注意,不是屏幕上显示的一行行文字,因为窗口大小是可变的)

process using markdown, 把输入文本当中的markdwon标记进行处理

mobi output, 没有什么设置的,可以选的就是title for table of content改成目录

点击ok,转换。然后在kindle for pc当中打开看看效果