如何将 AZW3 格式无损转换为 MOBI 格式并保持原有排版
Kindle 现已支持推送 EPUB 格式,你也可以将 AZW3 格式无损转换成 EPUB 格式。
小伙伴多次向书伴提出一个问题,那就是通过 Calibre 将排版精美的 AZW3 格式电子书转换成 MOBI 格式后推送到 Kindle,排版格式会发生很大的变化,比如行距过窄、内嵌字体丢失等等。
这是因为 AZW3 格式是 KF8 标准的 Kindle 电子书(也可以说是 MOBI8 格式),由于支持丰富的 CSS 样式才有了丰富的排版效果。但是要是转换成老的 MOBI7 格式,排版效果就会消失。如果用 Calibre 转换格式时,在转换设置的“MOBI 输出”选项里把“MOBI文件类型“选成了 old 就会转换成 MOBI7 格式。
有没有方法避免这种情况呢?答案当然是肯定的。下面为小伙伴们提供了三种方法。
方法一:用 Kindle Previewer 3 转换成 MOBI(推荐)
Kindle Previewer 3 是亚马逊官方推出的一款电子书预览工具,其中的导出功能支持将 .azw3 格式转换为 .mobi 格式(支持的其它格式还有:.epub、.mobi、.htm、.html、.xhtml、.opf、.kpf、.doc、.docx)。
- Kindle Previewer 3 下载:https://bookfere.com/tools#Kindle_Previewer
下载、安装并打开 Kindle Previewer 3,将电子书文件拖放到窗口的虚线框区域(或通过菜单栏中的【文件 > 打开电子书】)打开电子书,然后点击菜单栏中的【文件 > 导出】,文件格式选择“电子书(.mobi)”,并选择存放位置进行导出。得到的电子书文件就是 KF8 标准的 MOBI 格式电子书了。
* 注意,此方法本质上是使用 KindleGen 转换的 MOBI 格式文件,所以默认会包含源文件,从而导致转换后的文件比转换前的文件大一倍多。如果想避免此情况,可以使用 KindleStrip 这个小软件将其处理一下,获取精简的 MOBI 文件。或者直接使用“方法二”,在使用 KindleGen 命令时添加参数 -dont_append_source
来禁止在转换的过程中附加源文件。
方法二:用 KindleGen 将源文件再转换成 MOBI
其实此方法与方法一是同一性质,因为 Kindle Previwer 3 实际上也是利用 KindleGen 转换格式的。
此方法的思路是,首先用 KindleUnpack 把 azw3 文件拆解成源文件,然后再用亚马逊官方的转换软件 KindleGen 把源文件转换成 MOBI 格式。因为 KindleGen 这款转换软件是亚马逊官方提供的,所以生成的 MOBI 文件排版和 AZW3 是一模一样的。下面是具体步骤。
1、准备相关软件
- KindleUnpack 下载:https://bookfere.com/tools#ku(使用教程)
- KindleGen 下载:https://bookfere.com/tools#KindleGen(使用教程)
注意,KindleGen 是命令行工具,Windows 版需要在“命令提示符”中使用,macOS 和 Linux 版本需要在“终端”上使用。对于 macOS 来说,如果不喜欢用终端,也可以下载带 UI 界面的版本。
2、拆解 AZW3 文件
先使用 KindleUnpack 把 AZW3 格式电子书文件拆解成源文件。拆解完毕后会在电子书所在目录下生成一个同名文件夹。在这个文件夹中的 mobi8 文件夹里可以找到两种源文件,一种是 EPUB 格式,另一种是存放在 OEBPS 文件夹中的 OPF 格式,你可以任选其一作为转换成 MOBI 格式的源文件。
电子书名/mobi8/电子书名.epub
电子书名/mobi8/OEBPS/content.opf
* 注意,“电子书名”是指拆解的那本电子书的真实电子书名。
3、转换成 MOBI
最后使用 KindleGen 把 EPUB 格式或 OPF 格式转换成 MOBI 格式。如果使用命令行模式,可以输入以下任一命令进行转换。注意如果命令行当前目录和源文件不在同一目录,需要使用绝对路径。
kindlegen 电子书名/mobi8/电子书名.epub
kindlegen 电子书名/mobi8/OEBPS/content.opf
如果嫌命令提示符麻烦,也可以使用更简单的转换步骤,具体步骤如下:
- Windows 系统:把源文件直接拖放到 kindlegen.exe 文件上进行转换。
- Mac OS X 系统:把源文件直接拖放到打开的 UI 版 KindleGen 上进行转换。
转换完成后,在源文件所在的文件夹即可得到最终的 MOBI 格式文件。
* 注意,使用 KindleGen 转换 MOBI 默认会包含源文件,所以会比较大,可以使用 KindleStrip 这个小软件将其处理一下,即可得到精简的 MOBI 文件。使用命令行的,也可以通过添加 -dont_append_source
参数阻止附带源文件。
方法三:直接使用 Calibre 转换成 MOBI
使用 Calibre 也可以直接把 AZW3 格式转换成 MOBI 格式,也是最简单的一种方法。但是需要注意的是,由于 Calibre 转换的 MOBI 所使用的是 Calibre 的私有算法,和亚马逊官方的算法还是有差别的,所以转换出的 MOBI 文件还是会改变一点点排版。最直观的变化是边距比 KindleGen 转换的要大一些。
1、准备相关软件
Calibre 下载:https://bookfere.com/tools#calibre
2、转换成 MOBI
- 安装并打开 Calibre 软件,将 AZW3 格式的电子书文件拖进 Calibre 书库中;
- 右键点击它,依次展开菜单“转换书籍 → 逐个转换”(多本也可选择“批量转换”);
- 在弹出的窗口中将“输出格式”选择为“MOBI”,在“MOBI 输出”中把“MOBI 文件类型”改为“both”;
点击【确定】并等待转换完毕。最后得到的 MOBI 文件可以保留和 AZW3 格式较为一致的排版。
用以上两种方法转换的 MOBI 格式可以在不同程度上保持电子书原有排版。如果在过程中遇到任何问题请留言提出。另外如果您有更好的方法也请留言分享。
© 「书伴」原创文章,转载请注明出处及原文链接:https://bookfere.com/post/102.html
“转换电子书格式”相关阅读
- 如何把 Kindle 电子书的横排文字改成竖排
- 在 Kindle 中阅读 EPUB 格式电子书的两种有效方法
- KindleGen:亚马逊官方 Kindle 电子书格式转换工具
- 乐书:在线 Kindle 电子书制作和转换工具
- 如何直接推送 EPUB 格式电子书到 Kindle 邮箱
- Calibre 使用教程之电子书繁体字转简体字
- Calibre使用教程之为电子书添加或修改封面
- EpubPress:把打开的多个网页转成一本电子书
- EasyPub:把 TXT 文档转成带目录的 MOBI 格式
- 如何把 KFX 格式转换成 MOBI 等其它电子书格式
- Kindle Comic Converter:最简单的漫画转换工具
- 如何把 Kindle 电子书转换成增强型排版的 KFX 格式
- 亚马逊 Kindle Convert:纸质书无损转换电子书
- Calibre 使用教程之转换电子书格式
- Kindle Comic Creator:亚马逊官方漫画转换工具
我用calibre转epub为mobi的时候 原本竖排的繁体中文书就变成横排的了 为什么会这样 我该怎么从epub转换成mobi也不改变排版呢(讲真 这排版改变真的太大了
有没有尝试“方法一”或“方法二”?
试过了 kindlegen转换是没有问题的 就是想在calibre一站管理解决 calibre输出mobi设置为old new和both都一样的 没有封面 无法自定义字体 还改我的排版 比较鸡肋的转换 btw kindlegen已经停止更新了 以后要是有个KF9怕是没官方转换工具了(手动狗头
如果对电子书的排版要就较高,还是建议用亚马逊提供的工具,Calibre 转换出来的多多少少会有些问题。KindleGen 只是不再对外发布,不过仍然集成在 Kindle Previewer 中(这篇文章提供了提取方法),即便今后得不到 KindleGen 也可以用 Kindle Previewer 转换格式。
站长好!
请问有没有epub格式无损转azw3的工具呢,谢谢!
AZW3 是亚马逊的私有格式,所以没有可用的转换工具,但是它本质和 KF8 标准的 MOBI 格式是一样的。你可以使用亚马逊官方提供的转换工具 KindleGen 或 Kindle Previewer 把 EPUB 格式转换成 MOBI 格式。
你好,用软件kpw3把azw3原格式转换成mobi后,再考到kindle上会出现“内容无法打开……..如果您从亚马逊购买了此内容,请从设备删除,并从【云端】重新下载”。直觉把azw3移到kinde上是能直接打开的,原格式转换后就不行了,请求添加解决教学,(磕头)谢谢了
你是使用哪种方式转换格式后出现此问题的?
用第一种方法,Kindle Previewer3转换mobi。
Kindle Previewer 3 的哪个版本(版本号是多少)?是否尝试过重启 Kindle?
这种情况是使用了自定义字体,原因可以参考 https://xwsoul.com/posts/1231。不知道站长有没有好的解决办法呢?谢谢!
站长您好!我使用第二种方法拆解azw3文件,总是显示失败Error: Unpacking Failed。使用第一种方法Kindle Previewer 3提示“Kindle Previewer does not support this file, which has either been created using an older version of KindleGen or a third party application. We recommend using EPUB or DOCX format directly for previewing and publishing your book on Kindle.”
换了其他书的文件也是这样。还烦请站长给予指导,谢谢 :)
这需要测试,可以把文件发送到书伴邮箱(页面底部“联系”处获取)。
我也是,不过用插件版本正常
用kindlegen -c1 -dont_append_source转epub生成的mobi, 通过邮件推送到Kindle ios app 后, 只有mobi7的排版, 不是mobi8那种kf8的,图文混排和很多css样式包括对img的大小修改浮动等都不支持,请问有谁邮箱推送后在kindle app上是Kf8格式的么,也就是图片img大小等css样式修改能起作用
参考此回复。
所以我才有此疑惑。 想问下app上能不能mobi8(支持KF8),因为我试过了,我这边推送的MOBI,在app上只能收到mobi7的格式,KF8没有成功过,不知道有没有人KF8成功过。
另外。邮件推送到kindle 较新的硬件设备,可以收到mobi8(KF8)格式的文档么? 因为我手上没有kindle设备,不清楚推送是否有差距
可以确认装有最新固件较新型号的 Kindle 设备收到的是 MOBI8 格式。刚才我用平板上的 Kindle APP 测试了一下,推送后接收到的确实是旧版本的 MOBI 格式,很多排版都丢失了(甚至通过 USB 拷贝也是同样的效果,Kindle APP 总会优先读取旧格式)。这样看来,亚马逊的服务器只会向 Kindle APP 推送旧格式,而 Kindle 设备会根据型号和固件版本的不同推送不同格式。