用于准备电子书以供出版的开源工具

尚无读者喜欢这篇文章。
Publishing the open source way

Opensource.com

自助出版书籍从未如此简单。有许多开源工具可以用来创作书籍

我已经出版了三本电子书,并且正在整理另一本,我了解到,在写完一本书之后,在与世界分享你的书之前,还需要做一些事情。

如果你的书是以 EPUB 格式出版的,你需要检查这本书以确保其格式正确。而且,如果你通过 Amazon.com 的 Kindle 图书馆销售你的书,你需要将你的 EPUB 转换为 Kindle 支持的格式。

让我们来看看两个可以让你做到这两点的工具。

epubcheck

EPUB 文件是非常 结构化的。这不仅仅是章节(由单独的 XHTML 文件组成),还包括这些章节、支持文件(如图像和层叠样式表文件)以及 EPUB 文件内部目录的排列方式。

无论你多么小心,或者你使用什么工具以 EPUB 格式创建或组装书籍,都可能会出现一些错误。这就是为什么你需要在你发布你的书之前验证它。验证是确保你的 EPUB 书籍包含电子书阅读器期望的所有元素的过程。例如什么?这是一个部分列表

  • 完整的元数据
  • EPUB 文件中正确的目录结构
  • 有效的 XHTML
  • EPUB 文件中指向文件的有效链接和引用
  • 目录

电子书阅读器通常可以打开未通过验证的 EPUB 文件。但是,内容可能无法正确呈现,并且导航可能无法工作。

一个名为 epubcheck 的命令行工具使验证变得相当容易。epubcheck 是一个 Java 应用程序,因此在尝试使用它之前,请确保你的计算机上安装了相当新的 JRE。如果你不喜欢命令行,请不要担心:还有一个在线验证器可用。

要使用 epubcheck,请运行此命令

java -jar epubcheck–3.0b5.jar ebook_file.epub

以下是针对一个部分完成的电子书运行 epubcheck 的结果

Checking an EPUB with epubcheck

在上面的示例中,各个章节标题的文件名包含空格。这不是一个大错误,但可能会导致问题。

epubcheck 非常擅长查找问题。但在许多情况下,当涉及到解释这些问题是什么时,它就显得不足了。epubcheck 假定你具有一定程度的知识以及解决问题的知识。情况并非总是如此。

当一位我认识的作家验证电子书时,他收到一条错误消息,告诉他特定文件中存在无效的 HTML 语法。他对 HTML 有一定的了解,并转到 epubcheck 在文件中指向的行号。他没有看到任何错误。他寻求我的帮助,我们发现 epubcheck 期望在被 blockquote 标签包围的文本周围加上段落标签。

ebook-convert

无论你喜欢还是讨厌它(并且有很多人处于这个范围之内),亚马逊是最大且可以说是最受欢迎的书籍出版、销售和购买市场。然而,亚马逊使用专有格式,扩展名为 .mobi。除了一个名为 BookType 的基于网络的创作和出版工具外,没有任何开源工具可以创建 .mobi 格式的书籍。

你可以使用一个名为 ebook-convert 的命令行工具将你的电子书转换为 .mobi 格式。它是 calibre 电子书管理软件附带的实用程序套件的一部分。

要将 EPUB 文件转换为 .mobi,请运行以下命令

ebook-convert ebook_file.epub ebook_file.mobi

根据文件的大小,转换将花费 5 到 20 秒不等。以下是当你运行时该工具在命令行返回的内容

Converting an EPUB to .mobi

以下是在 calibre 中查看转换为 .mobi 格式的 EPUB 文件的样子

Viewing the converted .mobi file

我遇到的转换的唯一问题是 ebook-convert 会复制封面页。除此之外,它在将 EPUB 文件转换为 .mobi 格式方面做得和亚马逊的专有 Kindlegen 转换工具一样好。

在完成所有这些之后,你就可以与世界分享你的书了。

标签
That idiot Scott Nesbitt ...
我是一名长期使用自由/开源软件的用户,并且为了乐趣和利润而撰写各种文章。我并没有把自己看得太严肃,而且我所有的特技都是自己完成的。

9 条评论

我一直对这样的文章感兴趣,因为我一直在使用自由软件编写故事,并以 CC-BY-SA 协议发布它们。你可以在这里找到它们 - http://greencomet.org 看看它们是如何随着时间推移而发展的可能会很有趣。

起初,我使用名为 writer2epub 的 LibreOffice 扩展 - http://extensions.services.openoffice.org/en/project/Writer2ePub - 将 ODT 转换为 ePub。如果你想直接从文字处理器输出,这是一个方便的工具。但最近,我一直在使用 Calibre 进行转换,我非常喜欢它。

到目前为止,我还没有需要转换为亚马逊的专有格式,但如果我走这条路,我肯定会看看你提到的软件。再次感谢这篇文章。

rjb

你可能想看看 Bryan Behrenshausen 的这篇文章。这是对 Writer2EPUB 的详细介绍,我从中学习到了一些东西。

回复 ,作者:arjaybe (未验证)

我很惊讶 Sigil (https://code.google.com/p/sigil/) 没有在列表中。如果你想直接以 ePub 格式开发你的书(而不是以其他格式开发然后再转换),Sigil 是开始的地方。否则,你可以在出版你的书之前使用它来检查最后的部分(TOC、封面等)。

附言:我与 Sigil 开发团队没有任何关联,只是一个快乐的用户。

Sigil 曾经在列表上,但由于空间限制而被删减了。我广泛使用它,并且非常喜欢它附带的 FlightCrew 验证器。

然而,本文不是关于电子书创作工具的。它是关于准备你的电子书以供出版的工具。

回复 ,作者:gurdulilfo

为什么不使用 GitBook 而不是使用基于 JAVA 的解决方案呢?
http://tuxdiary.com/2014/08/16/gitbook/

我列出的文章想法之一(无论是为 Opensource.com 还是我自己的博客)是对 GitBook 的深入研究。我只需要几个长时间来全面测试它。

虽然 GitBook 可以将文件保存为 EPUB 或 .mobi 格式,但它有验证器功能吗?

回复 ,作者:Arun (未验证)

你也应该看看 Booktype。
http://sourcefabric.booktype.pro/booktype-16-for-authors-and-publishers/what-is-booktype/

我使用 BookType(及其前身 Booki)写了三本书,并且可以证明它作为编写和出版书籍的工具的有用性——无论是单个作者,还是多人合作编写一本书。

再次,我要强调的是,本文不是关于电子书创作工具的。它是关于准备你的电子书以供出版的工具。

回复 ,作者:Magdalena (未验证)

好文章!关于个人可以做到这一点以及如何做到这一点的意识仍然很低。一些评论
Kindlegen 用于 Mobi 转换非常令人沮丧,并且结果......不稳定!Calibre 可以轻松且出色地转换为 Mobi......毫无疑问!
Epubcheck 可以使用像 Pagina 的 epubchecker 这样的 GUI 运行...这是值得的,因为在线检查器需要相当长的时间,有文件大小限制(我相信是 10MB),并且需要互联网访问,而且作者通常根本不习惯 CLI。考虑到 CLI 工具可以被包装,跟踪批量错误并且每次都必须重新上传在我看来很愚蠢。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.