您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > calibre电子书制作教程
kindle下英文书的mobi资源很多,但是中文版的mobi资源很少,大多需要自己制作来完成。自从拿到kindle后,很是折腾了一把,小有心的,和大家分享一下。帖子的内容主要集中在如何通过calibre来自制mobi格式的书籍,集中在txt到mobi的过程需要使用到的软件calibre,下载地址kindleforpc,用来检查输出后的效果,calibre内置的阅读器速度太慢。一个好一点的文本编辑器,要支持两个功能:regex(正则表达式)和unicode格式转换功能,我现在用的是emeditor文本处理/排版工具软件1.GIDOTTYPESETTER,,可能会用到,主要用于html文件到txt的整理工作我在这里举几个例子大家,按照我的步骤操作一下,你基本上就会使用calibre了第一个例子话说我今天早上想起来,突然想看一本武侠小说,于是就去到一个我经常逛的网站:好读,这个网站以精排版的电子书闻名。好,我们随便挑一本书,古龙的《欢乐英雄》(=Share&P=0604)。好读支持的格式是PDB的,但是pdb的格式不能在kindle上直接打开,需要转换。先装一个pdbforcalibre的插件,。我们在calibre当中把下载的pdb文件拖到calibre中去,点击工具栏上的“convertbooks,左上角是输入格式,右上角是输出格式,如果你需要不高的话,直接点击ok,就是直接转成了mobi格式了好的,我们用kindleforpc打开刚才转换好的书,看看效果。虽然在转换的过程当中完美地将TOC(目录)输出,但是从kindleforpc里面看到的效果有两点我不太满意,1.繁体,看起来还是有点费劲2.首行没有两字缩进看来还是需要自己动手,重新排版一下,好吧,这次我们选择输出成txt格式的用emeditor打开转换好的txt文件,发现还存在问题繁体首行没有缩进段落之间有空行ok,把文件拷贝到GIDOTTYPESETTER中去,选择左下角的“简体字”,再点击工具栏中的“排版”,然后再拷贝回emeditor中去。经过GIDOTTYPESETTER排版的文本特点:首行缩进是两个全角空格段落之间没有空行为什么我要强调中文空格呢?calibre在转换的时候会自动忽略首行缩进的掉半角空格,为了保证首行两字缩进,我们用全角空格来控制好,下面我们对排版好的文本进行处理。好的书是自带toc(目录),所以我们要在txt当中加入标记,让calibre在转换的过程当中遇到相应标记时自动生成toc。calibre支持txt中的markdown(,什么是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表示寻找到符合正则表达式的字符串。点击replaceall,所有章节名前面都加入了##标记好,下一步我们来保存。calibre在转换中文文档时需要是unicode格式,我们在emeditor中file--saveas,在下面的encode当中选择unicode8即可在calibre删除掉刚才的pdb格式的欢乐英雄,然后把刚刚保存的文本文件拖到calibre当中去,点击工具栏的convertbooks先编辑书籍的基本信息,metadata,kindle是读取mobi的metadata的信息的,不管你的mobi文件名是什么。书籍的封面,我一般去douban找点击look&feel,选中”Removespacingbetweenparagraphs,这个选项确保在转换过程中去掉段与段之间的空行。本来拍过版的text段间是没有空行的,但是为了保险起见,我们还是选中这个选项的好。如果不选中这个选项,原有的段间空行会被保留,且首行缩进通过indentsize来控制,这是单位是em,不大好刚刚好控制在两个汉字的标准(因为kindle当中的字体是可以放大缩小的),所以我们通过排版,在每行首行前加入两个全角空格来保证首行缩进pagesetup这里面没有什么好设置的,因为epub,lit,mobi都会随着屏幕的大小、字号的大小来自动调整,我们还是循例选择kindlestructuredection这里选择默认的,唯一要注意的就是下方的insertpagebreaksbefore...默认的设置是在h1,h2标记前加入强行分页符,如果你不想这样的话,自己修改tableofcontents,设置目录项的标识因为这次我们处理的文件只有一层目录,而且以##(h2)来进行标识,我们在level1toc里面填入//h:h2,如果有两层目录的话,那么就在level2里面填入对应的//h:h1,//h:h3之类的tagtxtinput里面一定要选中两个:treateachlineasparagraph,把输入当中的文本文件当中每一个回车符前的内容当作一段来处理(注意,不是屏幕上显示的一行行文字,因为窗口大小是可变的)processusingmarkdown,把输入文本当中的markdwon标记进行处理mobioutput,没有什么设置的,可以选的就是titlefortableofcontent改成目录点击ok,转换。然后在kindleforpc当中打开看看效果我比较喜欢每一章的标题位置居中,好,我们更改一下设置calibre支持css,我们点击工具栏的convertbooks,然后在look&feel的extracss当中加入h2{text-align:center;font-size:large;padding-bottom:20pt;}css的语法请查阅中的css可以借鉴一下里面介绍了一些技巧很是不错传书从calibre往kindle里面传书有两种方法一种是在calibre里面点击工具栏的connect/share---startcontentserver,然后在kindle3的浏览器当中输入地址,x.x.x.x是calibre所在机器的ip,点击书籍对应的mobi链接,下载到kindle中去另外一种就是用usb线连上kindle,在calibre当中选择书籍,选择右键,sendtodevice,已经传好的书前面有个绿色的钩子标记从calibre往kindle里面传书的第三种方法(只适合已经注册的Kindle):1、设置Kindle邮箱,最好设成@free.kindle.com邮箱以免3G收费2、设置epub格式送到Kindle之前自动转换成mobi格式3、鼠标右键点击一本书后,选菜单Connect/Share/Sendingemailto...最近因为开发盛大锦书Bambook的SNB格式的calibre插件,更多的使用了calibre和研究了它的实现,也在论坛上看很多对calibre使用上的问题。干脆在这里写上一贴,把常见问题(尤其是中文相关的问题)做一总结。本文会不定期更新。什么是calibre?calibre是一个一站式的电子书籍管理软件,提供电子书籍管理、元信息整理、格式转换、阅读设备书籍同步、新闻下载等功能。可以近似把它类比为电子书界的iTunes。它使用Python开发,是一个跨平台的自由软件。calibre不是一个电子书下载软件,它只能从网上下载书籍的信息,但不能下载书籍本身。calibre不是电子书制作工具,虽然它提供格式转换功能,且在转换过程中提供一些定制功能,但这些功能非常有限,并不能用于精细控制和从头制作电子书。calibre的优缺点优点是功能全,可定制化程度高,可以折腾。缺点是体积庞大、速度慢、BUG较多(不过修得很快)。中文TXT文件转换成别的格式后全部变为乱码因为Windows上大部分中文TXT文件是用SystemCodepage编码的,而calibre默认用UTF-8编码解析。解决方法是:可以把文件转成UTF-8编码后再放入calibre转换格式;也可以在calibre的转换对话框(在主界面上选一个文件,点“转换书籍”,或按C键)中左边选择“外观”,然后在右侧的“输入字符编码”中填入“gbk”或“gb18030”,calibre就可以正常转换格式了。必要的时候也可以在也“首选项”-“常规选项“中的”外观“设置组中做全局的设置。中文文档转换后内容全部变成拼音在calibre的转换对话框中左边选择“外观”,去掉“转换unidcode字符到ASCII”的选项。自动生成的封面图片中的中文字符变成问号calibre自带并硬编码了一些字体文件,这些字体中不包含中文字符,渲染出来的图片就只能显示成问号了。解决方案是:打开首选项-优化调整-设置在生成默认封面时所使用的字体,分别修改generate_cover_foot_font和generate_cover_title_font的值来改变封面标题和页脚的字体。比如:generate_cover_title_font=”c:\\windows\\fonts\\simhei.ttf”就可以改用黑体。修改后需要重启calibre才可以生效。如果电脑上没有simhei.ttf这个字体,也可以换成任意路径下的任意字符文件。对于0.7.25以前版本的用户:用中文字体替换掉英文字体:在calibre安装目录下找到resources\fonts\liberation目录,用中文字体(比如文泉驿微米黑)替换掉里面的LiberationMono-Regular.ttf和LiberationSerif-Bold.ttf即可(删除原来的字体文件,把中文字体文件放进去并改名成这两个名字)。还有一个解决方案是直接安装GenerateCover插件,用它可以更精细的定制生成的封面样式。可以在首选项-插件-获取新的插件中直接在线安装。“保存到磁盘”和“发送到设备”后中文文件名变为拼音为了保证在各个平台各种文件系统下文件都可以正常的保存,calibre的作者采用了把非英语字符转为英语字符的方式来解决多语言文件名,中文就变成拼音了。对于“保存到磁盘”,可以去掉“首选项”-“保存图书到磁盘”-“将非英语
本文标题:calibre电子书制作教程
链接地址:https://www.777doc.com/doc-4810667 .html