静读君是初中开始接触电子书的,那个时候以为电子书就是TXT,到后来渐渐地接触到了PDF、DOC、CAJ······才知道原来电子书还分这么多的格式,那个时候还在想,为什么要弄这么多不同的格式呢?那不是自找麻烦吗?
接触的多了,才渐渐弄明白了不同格式文件的区别:
哪种格式的文件有什么优缺点?
适用于哪种情境下阅读?
应该用什么方法才能打开?
······
对于一个经常接触电子书的资深Kindler来说,大概地了解一下各种常用的电子书格式的区别与优缺点还是很有必要的,尤其是作为Kindler会经常接触到的MOBI、AZW、EPUB等格式!
MOBI格式电子书
MOBI是亚马逊电子书的专有格式,在没有接触Kindle之前,静读君听都没听说过这种格式,但入手Kindle之后,静读君眼里就只剩下两种格式了:MOBI与其他!
MOBI格式的发展可以说完全依赖于亚马逊这个强大的内容提供商,以及Kindle的流行普及;
MOBI格式电子书可以分为两类,也就是MOBI格式的两种标准,一个是旧标准:KF7(也称为MOBI7),一个是新标准:KF8(也称为MOBI8);
MOBI7和MOBI8格式电子书的后缀都是.MOBI,从名字后缀上我们是完全看不出区别的,但两者毕竟是不同的:
MOBI7不支持在Kindle中更换字体、加粗等比较丰富的排版格式,MOBI8则支持这些丰富的排版格式。
目前市面上的MOBI文件大部分是来自两种途径:
一种是EPUB、pdf或者txt转换成的MOBI,
一种是从Amazon商店流出来的MOBI。
AZW、AZW3格式电子书
与MOBI一样,AZW、AZW3同样是亚马逊的私有格式,甚至可以说,MOBI格式与AZW、AZW3格式在本质上并没有什么区别!
MOBI格式与AZW、AZW3格式的区别在于,AZW、AZW3格式比MOBI格式多了一层“壳”;
MOBI与AZW、AZW3格式的关系你可以这么理解:
目前从Amazon购买的书,大部分已经是AZW3格式了,而以前主流的MOBI格式则越来越少,它正逐渐取代MOBI和AZW成为Kindle电子书的主流格式。
有一些小伙伴曾经尝试:将排版精美的AZW3格式电子书转换成MOBI格式后推送到Kindle,排版格式会发生很大的变化,比如行距过窄、内嵌字体丢失等等。事实上,这就是因为小伙伴把AZW3格式的电子书转换成KF7标准导致的。而我们应当知道,AZW3格式的本质是KF8;
在这里有一个关于转换MOBI格式的小技巧,不止是AZW3格式,小伙伴们在将其他格式的电子书转换成MOBI格式的时候也可以用到:
那就是使用Calibre将电子书转换为混合MOBI7和MOBI8的Kindle电子书(both格式)
注:正如静读君所说,MOBI与AZW格式是亚马逊私有的格式,所以,基本只有亚马逊的Kindle电子阅读器设备和亚马逊在其他平台上Kindle软件APP等能支持这些格式;
EPUB格式电子书
EPUB是一种通用的电子书格式,事实上EPUB才是最常见的电子书格式,市面上大部分的阅读设备和软件都支持EPUB格式,然而,Kindle却并不包括在内;
正因为如此,如何转换电子书格式才成为了每一个资深Kindler必备的技能之一,很多时候,我们在网上搜集到都是EPUB格式电子书,要使Kindle能够阅读还必须在转换成MOBI格式,不过值得庆幸的是,MOBI跟EPUB表现很接近,两种格式可以傻瓜式互转,而不用太担心排版混乱;
除此之外,EPUB格式对于复杂的排版,图表,公式等元素的兼容性比MOBI格式要好。目前EPUB格式的优势主要体现在图文混排、图片嵌入字体上,未来可预测的优势是EPUB格式将会支持声音、影像等多媒体内容;
事实上,亚马逊是以EPUB格式电子书为标准,自行研发出MOBI格式以及AZW3格式的。你可能会疑惑亚马逊Kindle为什么不选择EPUB这种竞争对手(如Google、苹果)普遍采用的标准电子书格式?亚马逊的解释是这样的:
我们的创新速度很快,采用自己的标准格式,能够将创新成果迅速结合到产品中去。例如,Whispersync技术(该技术通过无线接入互联网,可以将电子书的阅读进度信息同步到各种阅读器上)、以及字号放大缩小的技术。采用自己的电子书格式于我们而言是非常有利的。
关于MOBI、AZW、EPUB等着几种常见的电子书格式,大家应该大致了解了吧!
总的来说
MOBI、AZW、AZW3格式都是亚马逊的专有格式,只有在Kindle及其他各平台上的Kindle软件应用上能够使用;
而EPUB则适用于大多数的阅读设备和软件,比如除Kindle之外的绝大部分安卓系统电子阅读器;
MOBI8标准比MOBI7标准支持更加丰富的排版格式,电子书转换为MOBI格式的时候要注意不要转换成了老标准的MOBI7;推荐使用Calibre将电子书转换为混合MOBI7和MOBI8的电子书格式(both);