【问题标题】:How can I programatically Kindlize an .HTML or .DOCX or .PDF file (make it Kindle-ready)?如何以编程方式 Kindlize .HTML 或 .DOCX 或 .PDF 文件(使其支持 Kindle)?
【发布时间】:2015-07-23 15:34:52
【问题描述】:

经验观察使我得出结论,当我将书籍文件上传到 CreateSpace(印刷书籍)时,最好从 .pdf 文件呈现它们。 Kindle(电子书)格式 OTOH 以 .docx 文件形式提供时效果更好。

不过,它们仍然远非完美。我创建了一本只包含文本的书——一种英文字体,然后是另一种字体,加粗,用于交替翻译成西班牙语的段落。平装版看起来不错。以下是它的显示方式:

不过,该文件的 Kindle 版本“比一袋烟头丑 9 倍”(或者至少比内布拉斯加州简单):

如您所见,它在段落之间没有中断(除了换行符 - 大呼!),并且不保留西班牙语段落的粗体格式 - 甚至章节标题格式! Kindlizing 过程显然认为所有文本都是平等的 - 没有尝试特殊格式!

所以,由于 Kindle 渲染过程显然不能正常工作(给他们提供我提供的用于创建图书文件的相同 PDF 时更糟糕 - 由于某种原因,渲染内容中缺少部分内容),是否存在一种我可以以编程方式(在 C# 中)处理文件(HTML、DOCX 或 PDF)的方法,这将使渲染的 Kindle 文件看起来像平装本(保留段落分隔符和粗体格式)?

更新

我下载了Calibre(试过了,就是这样),把谷歌屏蔽了,说天要塌了,Calibre会毁了我的浏览体验。爸爸烧吧,如果这是正版软件,谷歌为什么要屏蔽它?!?

更新 2

我尝试使用 Firefox 下载 Calibre,但虽然没有错误消息,但它根本不会下载文件。所以也许它也在阻止它,但是“默默地”。

【问题讨论】:

  • 这有点宽泛,因为听起来您正在寻找一个完整的转换程序。基于Kindle wikipedia,我想知道您是否检查过Calibre。维基百科文章还提到 kindle 应该支持 html5 和 css3 的子集。我想这应该能让你继续前进。
  • 如果你有格式良好的html文档,请使用kindlegen将其转换为kindle格式。
  • “格式良好”的定义是什么?虽然不是 Raquel Welch 式的,但 HTML 文件有一个 Style 部分(带有 CSS),后跟 HTML(没有“HTML”标签或任何其他标签,只是简单地从

    开始并从那里开始)

标签: c# formatting pdf-generation docx kindle


【解决方案1】:

kindlegen 是亚马逊的工具,用于获取 HTML 等输入并将其转换为 MOBI 文件。过去我们在 Rails 项目中使用过它并取得了很大的成功,您可以随时使用命令行来运行它。

Calibre 是一个第三方工具,它可以接收更多格式(PDF、EPUB 等)并输出更多格式。这是一个绝对合法的工具,具有非常有用的命令行界面 (ebook-convert)。

对于我们的项目,我们无法在 CentOS 服务器上安装 Calibre,因此我们最终只使用了 kindlegen 并转换了 HTML 文件。实际上,具体来说,我们将 OPF 文件与各种图像、html 文件、toc.ncx 文件等一起创建一个.mobi 文件以供最终发布。

您可能还想查看 Kindle 支持哪些字体,并确保正确指定了您的字体和样式。来自亚马逊的This PDF 很好地描述了什么是有效的 CSS。

【讨论】:

    猜你喜欢
    • 2020-06-26
    • 2012-04-23
    • 1970-01-01
    • 2020-01-23
    • 2020-05-07
    • 2013-08-24
    • 2017-07-06
    • 2011-12-02
    • 2013-03-27
    相关资源
    最近更新 更多