国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

深入了解 EPUB 文件

系統(tǒng) Linux
EPUB 文件是使用開放格式發(fā)布內(nèi)容的好方法。EPUB 文件格式基于 XHTML 內(nèi)容和 XML 元數(shù)據(jù)的開放標(biāo)準(zhǔn),包含在 zip 存檔中。

電子書提供了一種隨時(shí)隨地閱讀書籍、雜志和其他內(nèi)容的好方法。讀者可以在長途飛行和乘坐火車時(shí)享受電子書打發(fā)時(shí)間。最流行的電子書文件格式是 EPUB 文件,它是“電子出版物electronic publication”的縮寫。 EPUB 文件受到各種電子閱讀器的支持,并且是當(dāng)今電子書出版的有效標(biāo)準(zhǔn)。

EPUB 文件格式基于 XHTML 內(nèi)容和 XML 元數(shù)據(jù)的開放標(biāo)準(zhǔn),包含在 zip 存檔中。由于一切都基于開放標(biāo)準(zhǔn),我們可以使用通用工具來創(chuàng)建或檢查 EPUB 文件。讓我們探索一個(gè) EPUB 文件以了解更多信息?!??C 編程技巧和竅門指南???》,于今年早些時(shí)候在 ??Opensource.com?? 上發(fā)布,提供 PDF 或 EPUB 格式。

因?yàn)?EPUB 文件是放在 zip 文件中的 XHTML 內(nèi)容和 XML 元數(shù)據(jù),所以你可以用 ??unzip?? 命令在命令行檢查 EPUB:

$ unzip -l osdc_Jim-Hall_C-Programming-Tips.epub 
Archive: osdc_Jim-Hall_C-Programming-Tips.epub
Length Date Time Name
--------- ---------- ----- ----
20 06-23-2022 00:20 mimetype
8259 06-23-2022 00:20 OEBPS/styles/stylesheet.css
1659 06-23-2022 00:20 OEBPS/toc.xhtml
4460 06-23-2022 00:20 OEBPS/content.opf
44157 06-23-2022 00:20 OEBPS/sections/section0018.xhtml
1242 06-23-2022 00:20 OEBPS/sections/section0002.xhtml
22429 06-23-2022 00:20 OEBPS/sections/section0008.xhtml
[...]
9628 06-23-2022 00:20 OEBPS/sections/section0016.xhtml
748 06-23-2022 00:20 OEBPS/sections/section0001.xhtml
3370 06-23-2022 00:20 OEBPS/toc.ncx
8308 06-23-2022 00:21 OEBPS/images/image0011.png
6598 06-23-2022 00:21 OEBPS/images/image0009.png
[...]
14492 06-23-2022 00:21 OEBPS/images/image0005.png
239 06-23-2022 00:20 META-INF/container.xml
--------- -------
959201 41 files

這個(gè) EPUB 包含很多文件,但其中大部分是內(nèi)容。要了解 EPUB 文件是如何組合在一起的,請(qǐng)遵循電子書閱讀器的流程:

1、電子書閱讀器需要驗(yàn)證 EPUB 文件是否真的是 EPUB 文件。他們通過檢查 EPUB 存檔根目錄中的 ??mimetype?? 文件來驗(yàn)證文件。該文件僅包含一行描述 EPUB 文件的 MIME 類型:

application/epub+zip

2、為了定位內(nèi)容,電子書閱讀器從 ??META-INF/container.xml??? 文件開始。這是一個(gè)簡短的 XML 文檔,指示在哪里可以找到內(nèi)容。對(duì)于此 EPUB 文件,??container.xml?? 文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container">
<rootfiles>
<rootfile full-path="OEBPS/content.opf" media-type="application/oebps-package+xml"/>
</rootfiles>
</container>

為了使 ??container.xml?? 文件更易于閱讀,我將單行拆分為多行,并添加了一些間距來縮進(jìn)每行。XML 文件并不關(guān)心新行和空格等額外的空白,因此這種額外的間距不會(huì)影響 XML 文件。

3、??container.xml??? 文件表示 EPUB 的根從 ??OEBPS??? 目錄中的 ??content.opf??? 文件開始。OPF 擴(kuò)展名是因?yàn)?EPUB 基于 “開放打包格式Open Packaging Format”,但 ??content.opf?? 文件實(shí)際上只是另一個(gè) XML 文件。

4、??content.opf??? 文件包含一個(gè)完整的 EPUB 內(nèi)容清單,以及一個(gè)有序的目錄,以及查找每一章或每一節(jié)的引用。這個(gè) EPUB 的 ??content.opf?? 文件很長,因此我將在此僅展示一小部分作為示例。

XML 數(shù)據(jù)包含在 ??<package>??? 塊中,該塊本身具有 ??<metadata>??? 塊、??<manifest>??? 數(shù)據(jù)和包含電子書目錄的 ??<spine>?? 塊:

<?xml version="1.0" encoding="UTF-8"?>
<package unique-identifier="unique-identifier" version="3.0" xmlns="http://www.idpf.org/2007/opf" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:opf="http://www.idpf.org/2007/opf">
<metadata>
<dc:identifier id="unique-identifier">osdc002</dc:identifier>
<dc:title>Tips and Tricks for C Programming</dc:title>
<dc:creator>Jim Hall</dc:creator>
<dc:language>English</dc:language>
<meta property="dcterms:modified">2022-06-23T12:09:13Z</meta>
<meta content="LibreOffice/7.3.0.3$Linux_X86_64 LibreOffice_project/0f246aa12d0eee4a0f7adcefbf7c878fc2238db3 (libepubgen/0.1.1)" name="generator"/>
</metadata>
<manifest>
...
<item href="sections/section0001.xhtml" id="section0001" media-type="application/xhtml+xml"/>
<item href="images/image0003.png" id="image0003" media-type="image/png"/>
<item href="styles/stylesheet.css" id="stylesheet.css" media-type="text/css"/>
<item href="toc.ncx" id="toc.ncx" media-type="application/x-dtbncx+xml"/>
...
</manifest>
<spine toc="toc.ncx">
<itemref idref="section0001"/>
<itemref idref="section0002"/>
<itemref idref="section0003"/>
...
</spine>
</package>

你可以把數(shù)據(jù)匹配起來,看看在哪里可以找到每個(gè)部分。EPUB 閱讀器就是這樣做的。例如,目錄中的第一項(xiàng)引用了 ??section0001???,它在清單中被定義為位于 ??sections/section0001.xhtml??? 文件中。該文件的名稱不需要與 ??idref?? 條目相同,但 LibreOffice Writer 的自動(dòng)程序就是這樣創(chuàng)建該文件的。(你可以在元數(shù)據(jù)中看到,這個(gè) EPUB 是在 Linux 上用 LibreOffice 7.3.0.3 版本創(chuàng)建的,它可以將內(nèi)容導(dǎo)出為 EPUB 文件。)

EPUB 格式

EPUB 文件是一種使用開放格式發(fā)布內(nèi)容的好方法。EPUB 文件格式是 XML 元數(shù)據(jù)與 XHTML 內(nèi)容,包含在一個(gè) zip

文件內(nèi)。雖然大多數(shù)技術(shù)作家使用工具來創(chuàng)建 EPUB 文件,因?yàn)?EPUB 是基于開放標(biāo)準(zhǔn),意味著你可以使用其他方式創(chuàng)建自己的 EPUB 文件。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2013-10-09 11:07:31

日志文件系統(tǒng)

2010-06-23 20:31:54

2010-11-19 16:22:14

Oracle事務(wù)

2009-08-25 16:27:10

Mscomm控件

2010-07-13 09:36:25

2020-09-21 09:53:04

FlexCSS開發(fā)

2020-07-20 06:35:55

BashLinux

2011-07-18 15:08:34

2010-11-15 11:40:44

Oracle表空間

2022-06-03 10:09:32

威脅檢測(cè)軟件

2010-11-08 13:54:49

Sqlserver運(yùn)行

2021-04-28 10:13:58

zookeeperZNode核心原理

2010-09-27 09:31:42

JVM內(nèi)存結(jié)構(gòu)

2021-01-19 12:00:39

前端監(jiān)控代碼

2018-06-22 13:05:02

前端JavaScript引擎

2013-04-16 10:20:21

云存儲(chǔ)服務(wù)云存儲(chǔ)SLA服務(wù)水平協(xié)議

2009-09-24 16:22:50

Hibernate自動(dòng)

2010-09-28 09:14:36

HTML DOMJavascript

2017-01-20 08:30:19

JavaScriptfor循環(huán)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

91一区二区在线| 精品网站999www| 国产揄拍国内精品对白| 欧美一区二区三区艳史| 青青青国产精品| 亚洲免费视频在线观看| 福利成人导航| 精品免费日韩av| 成人影院免费观看| 欧美视频专区一二在线观看| 一本免费视频| 亚洲第一狼人社区| 一二三四社区在线视频6| 亚洲精品欧美二区三区中文字幕| 成人免费在线观看视频网站| 久久久精品日韩欧美| 亚洲欧美在线一区二区| 国产1区在线| 91精品免费观看| 国产视频福利在线| 欧美色图一区二区三区| 91在线不卡| 日产国产欧美视频一区精品| 国产精品日本一区二区| 亚洲精一区二区三区| 国产亚洲欧美一区二区| 精品成人久久| 免费av在线一区二区| 亚洲欧洲综合| 色999日韩自偷自拍美女| 免费一级欧美片在线观看| 色一情一乱一伦一区二区三区丨| 精品一区二区免费看| 91好吊色国产欧美日韩在线| 中文字幕国产一区二区| 国产真实伦在线观看| 欧美日韩一区二区三区在线免费观看| 国产在线视频你懂得| 欧美成人伊人久久综合网| 在线黄色的网站| 欧美另类xxx| 999国产精品| 久久本道综合色狠狠五月| 日本不卡一区二区三区 | 91九色综合久久| 99热在线精品观看| 日韩成人激情在线| 亚洲电影观看| 欧美大片欧美激情性色a∨久久| 亚洲精华一区二区三区| 成人免费网视频| 日本视频中文字幕一区二区三区| 欧美又粗又长又爽做受| 夜夜嗨av一区二区三区| 欧美xxxx性xxxxx高清| 久久资源免费视频| 色婷婷综合网| 日韩在线三区| 国产欧美一区二区三区网站| 视频午夜在线| 中文字幕欧美日韩在线| 99久久精品国产亚洲精品| 亚洲精品乱码视频| 亚洲色图在线视频| 色呦呦呦在线观看| 17婷婷久久www| 日本欧美韩国一区三区| 性生活免费在线观看| 欧美日韩一区二区电影| www久久久| 久久久久久久久四区三区| 91在线一区二区| 国产综合在线观看| 色综合天天狠天天透天天伊人| 在线高清一区| 黄网免费入口| 夜夜躁日日躁狠狠久久88av| 亚洲精品中文字幕乱码| www..com日韩| 国产乱论精品| 91视频国产一区| 久久蜜臀精品av| 黄污视频在线观看| 国产精品一区二区三区在线播放 | 日本一区二区视频在线| 国产成人午夜| 国产精品久久久久久久久久久久久| 456成人影院在线观看| 国产精品欧美一区二区三区奶水| 亚洲欧美一级| 久久66热这里只有精品| 中文字幕中文字幕在线一区 | 欧美.日韩.国产.一区.二区| 日日摸日日碰夜夜爽无码| 欧美曰成人黄网| 成人性生交大片免费看96| 正在播放亚洲| 欧美日韩在线观看一区二区| 国产精品主播在线观看| 999一区二区三区| 欧美日韩成人综合| 欧美91精品久久久久国产性生爱| 色综合亚洲精品激情狠狠| 99在线精品视频在线观看| 初尝黑人巨炮波多野结衣电影| 中文日韩电影网站| 蜜臀久久久99精品久久久久久| 中文字幕视频在线| 国内揄拍国内精品| zzijzzij亚洲日本少妇熟睡| 国产丝袜在线播放| 欧美激情第六页| 日本韩国欧美国产| 国产韩国精品一区二区三区| 成人网免费看| 欧美亚洲视频在线看网址| 久久婷婷色综合| 麻豆蜜桃在线观看| 鲁丝一区鲁丝二区鲁丝三区| 色女孩综合影院| 91精品啪在线观看国产18| 国产特级嫩嫩嫩bbb| 欧美国产激情18| 91色在线porny| 台湾天天综合人成在线| 国产天堂视频在线观看| 国产亚洲欧洲黄色| 国产精品456| jizzjizz少妇亚洲水多| 男人添女人荫蒂免费视频| 亚洲精品一区二区网址| 国产精品亚洲一区二区三区在线| 两个人看的在线视频www| 日韩精品一区二区三区电影| 亚洲人成电影网站色www| 国产剧情在线观看一区二区| 三妻四妾的电影电视剧在线观看| 在线成人性视频| 日韩精品亚洲精品| 国产.精品.日韩.另类.中文.在线.播放| 国产日韩电影| 精品久久久久久无码中文野结衣| 亚洲香蕉成人av网站在线观看| 懂色av中文一区二区三区| 日韩成人综合网| 五月婷婷激情久久| 国产精品r级在线| 欧美综合视频在线观看| 丝袜诱惑亚洲看片| 国产乱码午夜在线视频| 久久99中文字幕| 欧美在线亚洲一区| 日本韩国一区二区三区| 日本成人在线视频网站| 亚洲天堂一区二区| 国产一区亚洲二区三区| 日本精品va在线观看| 在线视频欧美精品| 久久伊人亚洲| 精品视频一区二区三区四区五区| 亚洲国产精品久久久久爰色欲| 91黑丝高跟在线| 在线一区二区三区做爰视频网站| 午夜亚洲视频| 成人精品三级| а√天堂www在线а√天堂视频| 狠狠色噜噜狠狠色综合久| 亚洲精品www久久久久久广东| 不卡欧美aaaaa| 欧美丰满日韩| av资源在线播放| 四虎精品一区二区永久在线观看| 91在线看www| 亚洲另类xxxx| 亚洲女与黑人做爰| 国产一区白浆| 中文字幕欧美人妻精品一区| 91av在线免费观看视频| 欧美午夜精品久久久久久超碰| 国产综合成人久久大片91| 91欧美日韩在线| 免费a级在线播放| 别急慢慢来1978如如2| 国产亚洲情侣一区二区无| 国内精品不卡| 成人av综合网| 老牛精品亚洲成av人片| 狠狠色2019综合网| 成人性生交大片免费看96| a中文在线播放| 妺妺窝人体色www在线观看| 国产精品对白刺激久久久| 亚洲性夜色噜噜噜7777| 亚洲电影在线免费观看| 极品尤物av久久免费看| 久久av影视| 超碰国产一区| 黄色av网站在线| 国产精品一区二区羞羞答答| 久久久久se|