解决Edge浏览器、Calibre阅读器无法打开epub格式电子书的问题

一、遇到问题

从网上下载的一些epub格式的书籍,无法用Win10自带的Edge打开,提示"无法打开此书籍";用Calibre自带的阅读器也打不开,会报错,显示一大堆莫名其妙的报错代码,咱也看不懂……

Edge浏览器报错

Calibre阅读器报错

不过经过我在网上耐心的搜索和查找之后,终于找到了问题的原因以及解决办法。

二、问题原因

这些打不开的"问题"书籍通常都是"掌上书苑"的书,或者是用掌上书苑的软件"epubbuilder"制作的书。


"epubbuilder"这个软件有个bug,它在生成epub格式的书籍的时候,有个地方的代码少了一个字母,对于要求比较严格的阅读器来说,比如Edgecalibre电子书阅读器,都会报错。

而有一些epub编辑器,则不会受到影响,可以打开这种有问题的epub书籍——Sigil就是其中之一。

三、解决方法

解决这个问题很容易——只要添加一个字母就行!!!

Sigil是一个很强大的免费的epub电子书编辑器,我们可以用它来修改我们有问题的epub电子书,修改完成后就可以在Edge浏览器或者其他epub阅读器里正常阅读epub电子书了。

修改的步骤很简单:

第一步:下载Sigil

直接百度"Sigil中文版",随便找个下载站下载就行。

也可以从官网下载,官网是英文的,从官网下载可能会非常缓慢。(极其缓慢,13.3M我下载了一个多小时还没下载完……

关于语言:Sigil安装后可能是英文的,可以直接按"F5"打开设置窗口,其中第四个选项就是选择语言,可以调成中文。然后重启一下Sigil,界面就变成中文了。

第二步:往文件里添加一个字母

Sigil打开有问题的书籍,然后在左边文件列表里找到"content.opf"这个文件,左键双击便会在右边打开。


如果你的Sigil没有这个文件列表,那就用组合键"Alt+F1"打开这个列表。

现在,在右边编辑器区域,找到第二行。


这一行里会有三个红色的英文字符串,找到"mlns"这个字符串,在它前面加个英文小写字母"x""mlns"就变成了"xmlns",这就大功告成了。


注意:"xmlns"前面是有个空格的,小心不要把空格删了,不然电子书依然会打不开。

最后一步:保存


点击上图中我圈出来的那个图标,就是保存。

保存之后,就可以关掉Sigil了,这个时候就能用Edge浏览器或Calibre阅读器打开该电子书了。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据