当前位置: 首页 > 科技观察

深入了解EPUB文件

时间:2023-03-21 01:38:18 科技观察

电子书提供了一种随时随地阅读书籍、杂志和其他内容的好方法。读者可以享受电子书来打发长途飞行和火车旅行的时间。最流行的电子书文件格式是EPUB文件,它是“电子出版物”的缩写。EPUB文件受到各种电子阅读器的支持,是当今电子书出版的有效标准。EPUB文件格式基于XHTML内容和XML元数据的开放标准,并包含在zip存档中。由于一切都基于开放标准,我们可以使用通用工具来创建或检查EPUB文件。让我们探索EPUB文件以了解更多信息。《??C 编程技巧和窍门指南???》,今年早些时候发布在Opensource.com上,提供PDF或EPUB格式。因为EPUB文件是放在zip文件中的XHTML内容和XML元数据,您可以在命令行使用解压缩命令检查EPUB:$unzip-losdc_Jim-Hall_C-Programming-Tips.epubArchive:osdc_Jim-Hall_C-Programming-Tips.epub长度日期时间名称-------------------------2006-23-202200:20mimetype825906-23-202200:20OEBPS/styles/stylesheet.css165906-23-202200:20OEBPS/toc.xhtml446006-23-202200:20OEBPS/content.opf4415706-23-202200:20OEBPS/sections/section0018.xhtml124206-23-202200:20OEBPS/sections/section0002.xhtml2242906-23-202200:20OEBPS/sections/section0008.xhtml[...]962806-23-202200:20OEBPS/sections/section0016.xhtml74806-23-202200:20OEBPS/sections/section0001.xhtml337006-23-202200:20OEBPS/toc.ncx830806-23-202200:21OEBPS/图像/image0011.png659806-23-202200:21OEBPS/images/image0009.png[...]1449206-23-202200:21OEBPS/images/image0005.png23906-23-202200:20META-INF/container.xml-----------------95920141个文件这个EPUB包含很多文件,但是大部分都是内容浏览器需要验证EPUB文件是否真的是一个EPUB文件。他们通过检查EPUB存档根目录中的mimetype文件来验证文件。该文件仅包含一行描述EPUB文件的MIME类型:application/epub+zip2。为了定位内容,电子书阅读器从META-INF/container.xml文件开始。这是一个简短的XML文档,指示在哪里可以找到内容。对于此EPUB文件,container.xml文件如下所示:为了使container.xml文件更易于阅读,我将单行拆分为多行并添加了一些间距以缩进每行。XML文件不关心额外的空格,例如换行符和空格,因此这种额外的空格不会影响XML文件。3、container.xml文件表示EPUB的根是从OEBPS目录下的content.opf文件开始的。OPF扩展名是因为EPUB基于“开放打包格式”,但content.opf文件实际上只是另一个XML文件。4.content.opf文件包含完整的EPUB内容列表、有序的目录以及对每个章节或部分的引用。这个EPUB的content.opf文件很长,所以我在这里只展示一小部分作为例子。XML数据包含在一个块中,该块本身有一个块、一个数据和一个包含电子书目录块的osdc002C编程提示和技巧JimHall英语2022-06-23T12:09:13Zcontent="LibreOffice/7.3.0.3$Linux_X86_64LibreOffice_project/0f246aa12d0eee4a0f7adcefbf7c878fc2238db3(librepubgen/0.1.1)"name="generator"/>......您可以匹配数据以查看可以找到每个部分的位置。这就是EPUB阅读器所做的。例如,目录中的第一项引用section0001,它在清单中定义为位于sections/section0001.xhtml文件中。文件名不需要与idref条目相同,但LibreOfficeWriter的自动例程就是这样创建文件的。(正如您在元数据中看到的那样,此EPUB是在Linux上使用LibreOffice7.3.0.3版创建的,它可以将内容导出为EPUB文件。)EPUB格式EPUB文件是使用开放格式发布内容的绝佳方式。EPUB文件格式是包含在zip文件中的XML元数据和XHTML内容。虽然大多数技术作家使用工具来创建EPUB文件,但由于EPUB基于开放标准,这意味着您可以使用其他方式来创建自己的EPUB文件。