开源工具助您准备电子书以供发布

尚无读者喜欢此文。
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 标签包围的文本周围使用 paragraph 标签。

ebook-convert

不管您喜欢还是讨厌它(并且有很多人在这两个极端之间),亚马逊是最大且可以说是最受欢迎的图书出版、销售和购买市场。然而,亚马逊使用专有格式,扩展名为 .mobi。除了名为 BookType 的基于 Web 的创作和发布工具外,没有任何开源工具可以创建 .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、封面等)。

PS:我与 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 可以通过 GUI 运行,例如 Pagina 的 epubchecker...这是值得的,因为在线检查器需要相当长的时间,具有文件大小限制(我相信是 10MB),并且需要互联网访问,而作者通常根本不习惯 CLI。跟踪批量的错误并且每次都必须重新上传,恕我直言,这很愚蠢,因为 CLI 工具可以被包装。

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.