如何解决 Calibre 推送中文书到 Kindle 显示拼音书名问题
- 兼容低版本 Calibre。
自从亚马逊发布 5.15.1 版本固件后,通过亚马逊 Send to Kindle 服务提供的五种方式推送到 Kindle 的电子书不显示封面的问题被修复了,但是随后又出现了无法正常显示书名和作者名的问题(具体表现为书名显示为推送时的文件名,作者名显示为 Unknown)。虽然后来亚马逊修复了作者名的显示问题,但是推送到 Kindle 中仍然显示为文件名,而非电子书元数据中的书名。
这对于手动推送电子书到 Kindle 的人来说不算是个问题,因为可以在推送电子书前将文件名重命名成与之相对应的书名。但是对于习惯用 Calibre 推送电子书的人来说就显得有些麻烦,因为 Calibre 会自动将电子书的文件名从中文书名转换成拼音书名,并且未提供相关的设置,只要通过其内置的邮件功能推送电子书,发送到 Kindle 后都会显示拼音书名。
▲ 左:Calibre 推送效果;右:Send to Kindle 插件推送效果
为解决此问题,书伴开发了一款名为 Send to Kindle 的 Calibre 插件,此插件可以让你通过 Calibre 内置邮件功能发送文件名带有正确书名的电子书,也可以在发送前自定义书名。
一、安装插件
首先确保你已经安装了 Calibre,然后通过以下链接下载插件文件:
- Send to Kindle 插件下载:Github下载 | 百度网盘 | Google Drive
插件下载完成后,打开 Calibre 并依次点击其菜单【首选项 → 插件 → 从文件加载插件】,在弹出的对话框中选择下载的后缀名为 .zip 的插件文件,即可完成安装(请留意,首次安装此插件时,要选择把图标显示在主工具栏上)。最后关闭并重新打开 Calibre 即可正常使用。
如果安装插件后,插件图标未出现在 Calibre 的主工具栏上,可以依次点击 Calibre 的菜单【首选项 → 工具与菜单】,在弹出的对话框中点击下拉菜单并选择“主工具栏”,然后在左栏找到并选中插件图标,点击中间的右箭头按钮【>】将其添加到右栏,最后点击【应用】按钮即可。
二、使用方法
插件的使用方法很简单,先在 Calibre 书库中选中要推送的电子书,点击 Calibre 主工具栏上的【发送到Kindle】图标按钮,在弹出的对话框上,会显示正确的电子书书名,这也是发送到 Kindle 后显示的书名,你可以修改这些书名,最后点击【发送到 Kindle】按钮即可。
插件会将电子书的推送添加到 Calibre 的任务队列,你可以通过点击插件弹出提示中的【显示详情 …】按钮,也可以通过点击 Calibre 右下角的【任务】查看推送详情。
三、推送设置
插件支持同时推送到多个邮箱,你可以勾选接收邮箱并保存,以便下次推送时使用。
注意,插件会读取 Calibre 的“通过邮件分享”功能的相关设置,包括接收电子书的 Kindle 邮箱和邮件服务器信息,如果这些信息没有被正确设置,将无法成功推送电子书。
你可以通过 Calibre 的【首选项 → 通过邮件分享】,也可以通过本插件的【设置 → 邮箱设置】打开“通过邮件分享”设置窗口,添加 Kindle 邮箱或修改邮件服务器信息。
你可以在设置中设置“首选格式”,这样每次推送时会优先试用此格式,如果选择“未设置”则根据邮箱设置中的格式进行推送。如果你想要在推送完电子书后从书库中将其删除,可以在设置中勾选“发送后从书库删除电子书”。
如果你想要从 Calibre 书库中获取中文文件名形式的电子书文件(比如需要通过网页版 Send to Kindle 推送),可以参考《如何将 Calibre 书库中的电子书保存为中文文件名》这篇文章。
如果你在使用插件的过程中遇到了问题,或者有建议,欢迎留言反馈。
四、更新日志:
2024.02.23 / v1.1.1
- 兼容低版本 Calibre。
2023.04.30 / v1.1.0
- 修复了修改的电子书封面不生效的问题;
- 新增了发送后从库中删除电子书的选项;
- 新增了设置首选电子书格式的选项;
- 新增了显示电子邮件地址别名的功能;
- 删除了为每本电子书单独选择格式的功能。
2023.01.07 / v1.0.0
- 首次发布
© 「书伴」原创文章,转载请注明出处及原文链接:https://bookfere.com/post/1042.html
“Kindle推送”相关阅读
- 如何快速无损修复推送失败的 EPUB 格式电子书文件
- Readability:定时或立即把长文推送到 Kindle
- 亚马逊 Send to Kindle:适用于不同场景的五种推送方式
- Calibre 使用教程之通过邮箱一键推送 Kindle 电子书
- 通过 Send to Kindle 发送的文档已支持 KFX 增强排版功能
- Kindle 怎么导入电子书(图解多种电子书导入方式)
- 新手 3 分钟 GET!视频版 Kindle 推送教程
- 如何用 KindleEar 推送无 RSS 的网站内容(中篇)
- Kindle 退出中国后如何继续购买电子书及使用推送服务
- 为什么推送到 Kindle 的 KF8 标准 MOBI 电子书不显示封面
- 亚马逊 Kindle 个人文档服务已原生支持推送 EPUB 格式
- BookDrop:用 Dropbox 自动同步电子书到 Kindle
- 外出旅行时如何用安卓手机推送电子书到 Kindle
- 利用 IFTTT 自动推送上传到 Dropbox 的电子书
- 中亚 Send to Kindle 微信服务推送步骤变更
我认为可以考虑设置个快速模式,并设置个开关供用户自由切换快速模式和普通模式。
你当前的使用逻辑为普通模式,快速模式是点击你的插件“推送到kindle”后,自动按照“书名”所示发送到kindle邮箱,像calibre推书一样一步到位。
希望可以考虑采纳,谢谢!
kindle邮箱是用户已经设置的默认邮箱
您好 插件非常好用方便 只是有一个小问题 在传送epub格式的图书时,无法将calibre上已经改过的作者名正确显示在kindle上,而是书籍原作者名,而mobi格式没有此问题
你是通过什么样的方式修改的作者名呢?我测试了一下,用 Calibre 的编辑元数据功能修改 EPUB 的作者名,推送后可以正常显示修改后的作者名。
请问下,安装这款名为 Send to Kindle 的 Calibre 插件时,是否要求放在指定的根目录文件下面?因为我下载文件后,通过“打开 Calibre 并依次点击其菜单【首选项 → 插件 → 从文件加载插件】,在弹出的对话框中选择下载的后缀名为 .zip 的插件文件,安装”这种方式一直失败,失败原因是:错误: 未处理的异常: InvalidPlugin:The plugin in ‘/Users/wss/Downloads/Send-to-Kindle-Calibre-Plugin_v1.zip’ is invalid. It does not contain a top-level __init__.py file
这个是通过哪种方式下载的?
除了没用Google Drive,前三种下载方式我都试过了,下载的是文件夹形式,然后我压缩为.zip后,再从文件加载插件,一直失败,原因都是说少了这个top-level __init__.py file文件
不要下载文件夹,直接下载文件夹里面的 ZIP 文件。
我打开Send-to-Kindle-Calibre-Plugin文件夹里面没有zip文件
解决了,在百度网盘下载的这个文件夹里面有.zip文件,谢谢啦
我有个建议,建议改为仅在推送失败时才弹对话框,推送成功后不提示任何消息,以免推送书本后还要点击两次鼠标。
可以考虑设置取消推送成功后的通知,或者弄个类似于 calibre 里的“编辑元数据” -> “下载元数据和封面”,任务完成后会自动消失的toast,谢谢
书伴这个网站做得特别用心,感恩
谢谢建议。那个对话框在高频使用时确实有点儿碍事,但是如果点击按钮后没有任何提示,可能会有人不知道推送被添加到了 Calibre 的任务列表。你说的那个弹出通知感觉要好一点儿,不过貌似还是需要点击按钮才会消失,而且每次推送后通知会排队出现,也挺碍事。如果没有其它更好的选择,就在设置里加个开关通知的选项。
站长好,我这个文件经过添加页码后,用最新的插件办法推送,结果下载下来,文件的封面和第一页不是封面,而是一个照相机和右下角的红三角形里面有个感叹号,我记不清楚,应该和以前离线USB导入的书的错误封面一样,请问怎么解决呢?文件已经发到站长的邮箱上了,谢谢
检查了一下你发来的 EPUB 文件,发现元数据中使用的封面图片不存在,因此 Kindle 无法正常显示封面。最快捷的解决方法是用 Calibre 重新转换一遍 EPUB 格式(即转换时输入输出格式都选择 EPUB)再推送就不会有问题了。
解决了,谢谢站长!
好评,困扰的邮箱推书问题解决了。我想在calibre-bug上提这个问题被否决了,自己也不会编程修改代码。你的插件完美地解决了问题。
但我有个小建议。有人或许在邮箱上设置了别名,如果插件里的“设置”面板,邮箱列表如果有别名就显示别名,否则才显示邮箱地址就好了
显示别名好像并不比显示邮箱更清晰,或者把别名放在邮箱后面?像这样 test@test.com (Alias Name)。
别名是指标记的邮箱名称,通常使用者会设置为人,或kindle,或者其他有意义的名称,别名本身就已经能特别清楚地表明要发送给谁,除非他自己设置不规范。
calibre上的逻辑是如果设置了别名,就只显示别名,不显示邮箱,没有别名才显示邮箱。
但如果你还是担心不清晰的话,可以考虑“别名(邮箱)”的顺序来显示
这种方案虽然解决推送中文书、手动推送中文新闻报纸显示拼音的问题,大多数用户的问题得到了解决。
但calibre上推送中文书的问题没有根治。比如是,如果使用“抓取新闻”功能定时自动推送新闻报纸,或自定义rss源的话,因为推送邮箱会调用calibre自带的推送功能,所以推送的结果还是拼音。
这个只能在calibre反馈解决附件名的问题,或者反馈亚马逊修复好这个bug。或者得开发个自动推“抓取新闻”的模块了
如果有会编程的dalao修复这个问题,并让calibre社区采纳,这个问题才能根治
批量拼音转汉字插件有没有
你可以通过 Calibre 的“保存到磁盘”功能批量把书库中的电子书文件以中文书名保存。具体可参考这条回复。
就因为calibre乱改我的代码(css),才坚决不用
感谢分享好插件。
我这边用189邮箱投递失败。看了一下,发现投递邮件没有标题(邮件里显示no subject 投递失败)。
解决方法:把zip包解压,打开main.py,修改第306行,将修改:
(path, name, email, ”, ”), {},
修改为
(path, name, email, ‘KHh29hfJGq9IPxRYXUIUh9’, ”), {},
上面多的字符串,可以自己随便编辑。
然后保存,重新打包为zip包。
在calibre中将原插件删除,然后重启,再安装修改后的插件,重启后就可以了。
谢谢反馈。更新后的插件把邮件主题和内容都改成了书名。
200M走send to kindle官方网站或者桌面应用还是会有拼音的问题。
Calibre 的保存到磁盘功能就能解决这个问题。你可以先去 Calibre 的【首选项 → 保存书籍至磁盘】,分别取消勾选“将非英语字符转换为对应英语字符”、“分别保存封面”和“在独立的 OPF 文件中保存元数据”这三个选项,然后把“保存模板”更改为
{title}
。最后在书库中选中要保存的电子书,点击主工具栏上的【保存到磁盘】图标旁边的倒三角按钮,点击弹出菜单中的“以单一格式保存到磁盘…”(比如选择 EPUB 格式)选择保存位置即可。网页版的可以自行修改,桌面版的能发200M吗?
啊才看到calibre封面生效的逻辑,calibre有损转换为了一个封面感觉不太合适(
感谢您的插件。
在使用过程中存在一个小问题:在用该插件发送epub到亚马逊kindle邮箱后,有部分书籍在kindle上无法显示个人文档封面。之后测试发现,插件发送从亚马逊等其他出版方获取的epub文件均无封面问题,有问题是我自己制作的epub文件,我习惯制作完成后在calibre上通过元数据或者导入本地图片为其添加封面,这可能是上述封面显示问题的原因。插件非常好用,再次感谢。
如果是通过 Calibre 的元数据修改功能改的封面,需要重新转换一次格式,这样封面才能真正添加到电子书中。还有一种方式是直接编辑电子书,把封面图片导进去,再手动修改 OPF 文件。
感谢!
刚刚试了下笨方法,把calibre里面添加好封面的epub‘保存到磁盘’,之后再导入calibre也能解决封面问题。已经被kindle封面折磨大半年,亚马逊再瞎搞就躺平哩哩
非常好用,帮了大忙了,感谢!!
这个插件有明显的bug,我是Kindle Oasis3 ,屏幕的比例是3:4。我习惯把导入calibre的图书封面尺寸修改为3:4,但是使用这插件之后推送到Kindle端的图书封面是原数据的模样,我修改的比例未能保存。
望同好及时注意到这个bug
除非是通过 USB 传输,在 Calibre 中用修改元数据功能为电子书修改封面后需要转换一次格式才能生效,插件不负责转换,只发送转换后的电子书文件。
实测有效, 怪不得亚马逊要退出中国呢, 这么点问题这么久都没修复, 要是在中国,这种效率早就下岗了
或者,亚马逊把这当作新特性,允许用户自定义在 Kindle 中显示的书名。
给力。有大神能分析下目前网络上的自制书增加DRM的方法吗?