【问题标题】:How to programmatically diffrenciate the epub fix layout and reflowable如何以编程方式区分 epub 固定布局和可重排布局
【发布时间】:2015-08-19 07:30:54
【问题描述】:

我需要以编程方式识别 ePub 文件的布局。 ePub 文件可以是 Fixed Layout 或 Reflowable Layout。

我尝试使用 Microsoft.WindowsAPICodePack 和 Microsoft.WindowsAPICodePack.Shell 来提取 ePub 文件的元数据。

但是,我无法识别属性可以告诉我布局是什么。

元数据中是否有任何应该关注的隐藏属性?

-艾伦-

【问题讨论】:

  • 您在使用哪个库用于 epub?您正在为移动设备构建应用程序吗?

标签: c# metadata epub windows-api-code-pack epub3


【解决方案1】:

您需要在 OPF 文件的 <metadata> 部分中查找 <meta property="rendition:layout"> 元素:

  1. <meta property="rendition:layout">reflowable</meta> 表示可重排的 EPUB
  2. <meta property="rendition:layout">pre-paginated</meta> 表示固定版式 EPUB

规格:http://www.idpf.org/epub/301/spec/epub-publications.html#meta-properties-rendering

注意:EPUB 3 允许混合 EPUB(即混合可重排和预先分页的书脊项目),因此该属性可能附加到书脊元素。查看rendition:layout* 属性:http://www.idpf.org/epub/301/spec/epub-publications.html#sec-itemref-property-values

【讨论】:

  • 不幸的是,我们的大多数 OPF 文件都没有
  • 根据idpf.org/epub/301/spec/… ,您应该假设 EPUB 是可重排的:“如果元数据中没有携带此属性的元元素出现,则 EPUB 阅读系统必须将可重排的默认值假定为全局值部分。”
  • 如果您想要一个额外的启发式方法,因为 FXL 要求您在 XHTML 文件的标题中指定一个视口元元素,您可以查找它。如果找不到,则 EPUB 是可重排的,否则为 FXL。 (见:idpf.org/epub/301/spec/…
猜你喜欢
  • 2014-11-27
  • 2012-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多