admin管理员组

文章数量:1538621

2024年5月10日发(作者:)

一、什么是epub

epub是一个完全开放和免费的电子书标准。它可以“自动重新编排”的内容,也就

是说文字内容可以根据阅读设备的特性(屏幕尺寸、不同平台),以最适于阅读的方式

显示。

Epub文件后缀名:.epub

二、 epub组成

Epub内部使用XHTML(或者DTBook)来展现文件的内容;用一系列css来定义

格式和版面设计; 然后把所有的文件压缩成zip包。

Epub格式中包含了DRM相关功能(目前epub引擎暂时不考虑drm相关信息)

EPub包括三项主要规格:

开放出版结构(Open Publication Structure,OPS)2.0,以定义内容的版面;

开放包裹格式(Open Packaging Format,OPF)2.0,定义以XML为基础的.epub档案结构;

OEBPS容纳格式(OEBPS Container Format,OCF)1.0,将所有相关文件收集至ZIP压缩档

案之中。

1. OPS:

用XHTML(或者DTBook)来构筑书的内容。

用一系列css来定义书的格式和版面设计。

支持 png、jpeg、gif、svg的图片格式。

2. OPF:

OPF 文件是 EPUB 规范中最复杂的元数据。它用来定义ops一系列内容组合到

一起的机制,并为ebook提供了一些额外的结构和内容。Opf包含四个子元素:metadata,

manifest, spine, guide。在OEBPS中的opf包含两个XML: .opf和.ncx

(一).opf

OPF包括以下内容:

1)metadata:epub的元数据,如title、language、identifier、cover等。其中,title 和 identifier

这两个数据是必须的。

按照EPUB规范,identifier由数字图书的创建者定义,必须唯一。对于图书出版商来说,

这个字段一般包括ISBN或者Library of Congress编号;也可以使用URL或者随机生成的唯

一用户ID。注意:unique-identifier 的值必须和 dc:identifier 元素的 ID 属性匹配。

2)manifest:列出了package中所包含的所有文件(xhtml、css、png、ncx等)。EPUB 鼓

励使用 CSS 设定图书内容的样式,因此 manifest 中也包含 CSS。注意:进入数字图书的

所有文件都必须在 manifest 中列出。

3)spine:所有xhtml文档的线性阅读顺序。其中,spine的TOC属性必须包含在manifest

列出来的.ncx的id。可以将 OPF spine 理解为是书中 “页面” 的顺序,解析的时候按照文

档顺序从上到下依次读取 spine。

在spine中的每个 itemref 元素都需要有一个 idref 属性,这个属性和 manifest 中的某

个 ID 匹配。

spine 中的 linear 属性表明该项是作为线性阅读顺序中的一项,还是和先后次序无关。

有些阅读器可以将spine中linear=no的项作为辅助选项处理,有些阅读器则选择忽略这个属

性。例如在下边的实例中,支持辅助选项处理的阅读器会依次列出titlepage、chapter01、

chapter05,chapter02、chapter03、chapter04只在点击到(或者其他开启动作)之后才会显示。

但是对于支持打印的阅读器,需要忽略linear=no的属性,保证能够最完全的展示ops中的

内容。

好的阅读器需要同时提供两种选择给用户。

本文标签: 内容阅读定义顺序文件