--- tags: BookWalker, EPUB --- # EPUB 3.3改版與變更點 - 2021/3/19 BookWalker Taiwan會議使用 ## 為什麼要進行EPUB 3.3改版? 從EPUB的歷史來說明。過去EPUB 2.0, 3.0是由IDPF進行制定的開放標準。IDPF是個註冊在美國的非營利組織,其會員制定的規格只在業界透過自行採用的方式成為「業界標準」,是實質(de facto)標準。 IDPF對於業界,出版社供應的EPUB檔案,以及電子書販售方提供的閱讀系統,都沒有強制力。像是要求符合EPUB規格中的要求,或者符合最新版本的EPUB規格。這些都要業界自行願意採用。所以各家在EPUB功能支援上不一致,像是對HTML格式的Fixed Layout支援和Media Overlay朗讀功能;也不會跟隨新版,像是IDPF制定了EPUB 3.0.1和EPUB 3.1,但僅有3.0.1受到採用(內容僅做一些小幅度變更)。 後來IDPF併入W3C,W3C就是更具有強制力的標準化組織了。而W3C以小組方式運作,分為: ### W3C的各種小組 - WG Working Group:工作小組 - IG Interest Group:興趣小組 - BG Business Group:業界小組 - CG Community Group:社群小組 工作小組是由W3C會員派人組成,也有一些邀請專家(非會員的個人)。主要是按照章程制定出各種技術規格或者文件。(如有聲書、EPUB WG) 興趣小組也是僅限W3C會員,主要是針對特定領域需求討論需要怎麼樣的規格以及如何執行,決定方向並且寫成文件的形式發表。(如數位出版IG) 業界小組則是不關於技術,由產業中的代表派員(需要付費)參與,作為技術端(IG、WG)和產業端的聯繫,產業對於目前的技術方向給予意見。(如汽車業界小組、出版業界小組) 社群小組則是不限身份,任何人都可以參與,可以針對各自提出的想法共同討論,以文件的形式發表。後來可能成為正式的IG或者WG。(如支付CG) ### EPUB@W3C 所以IDPF合併到W3C的時候,成立了數位出版興趣組,來討論進一步的標準化作業;之後決定要做網頁出版品(Web Publication)時,又成立了數位出版工作組。而EPUB的維護工作,為了讓非W3C會員的人也能參與,所以成立了EPUB 3社群小組來進行改版。 其主要產出就是EPUB 3.2版本。原因是IDPF最後的EPUB 3.1版本有些部分和3.0.1版本有相容性問題,以及日本不希望取消一些-epub-字首的CSS特性。 但是最終發表的規格是W3C社群發布,也是沒有強制性的規格。今年成立了EPUB工作小組,進行EPUB 3.3改版作業,最終規格就會透過W3C的程序,成為正式W3C標準;也會以規格為基礎,推出一系列的測試,來判斷閱讀系統是否符合規格,有一定數量的閱讀系統符合該規格後,才會正式成為推薦(Recommendation)標準。 所以EPUB 3.3透過W3C工作小組的程序,可以稍具強制力。而正式發佈的W3C規格也會送到ISO/IEC成為法理上(De jure)的國際標準。 ## EPUB 3.3變更 EPUB 3.3的變更點如下: ### 文件結構變更 過去EPUB規格在演進過程中衍伸出各種子規格與說明,包括: - EPUB 3 總覽(EPUB 3 Overview) - EPUB 3.2 規格(EPUB 3.2 Specification) - EPUB 3.2 變更點(EPUB 3.2 Changes) - EPUB包裝 3.2(EPUB Packages 3.2) - EPUB內容文件 3.2(EPUB Content Documents 3.2) - EPUB開放容器格式 3.2(EPUB Open Container Format (OCF) 3.2) - EPUB媒體層疊 3.2(EPUB Media Overlays 3.2) - EPUB無障礙輔助性 1.0(EPUB Accessibility 1.0) 好處是想要看某一部分功能的文件時,可以直接參閱只提及該部分的文件。但是如果為了測試檢驗,就需要更為整合,所以EPUB 3.3改為: - EPUB 3 總覽(EPUB 3 Overview) - [EPUB 3.3](https://www.w3.org/TR/epub-33/) - [EPUB 3.3閱讀系統](https://www.w3.org/TR/epub-rs-33/) - [EPUB多重內容解釋出版品1.1](https://www.w3.org/TR/epub-multi-rend-11/) - [EPUB無障礙輔助性1.1](https://www.w3.org/TR/epub-a11y-11/) 其中EPUB 3.3主要是針對出版品,而對閱讀系統的要求放到另一份文件。 「多重內容解釋出版品」則是將原有的規格簡化,同時保留向下相容性的做法。 「無障礙輔助性」則是保留並且延續前版的需求。 ### 多重內容解釋出版品 在EPUB規格裡,過去有一個常用到的名詞Rendition,很難翻譯,我譯成「內容解釋」,主要是在EPUB檔案中`/META-INF/`資料夾中`container.xml`檔案裡指向OPF檔的`<rootfile>`: ```<?xml version="1.0"?> <container version="1.0" xmlns="urn:oasis:names:tc:opendocument:xmlns:container"> <rootfiles> <rootfile full-path="SVG/Sandman.opf" media-type="application/oebps-package+xml" /> <rootfile full-path="XHTML/Sandman.opf" media-type="application/oebps-package+xml" /> </rootfiles> </container> ``` 過去的EPUB規格裡,可以接受一本EPUB中包含多個內容解釋=OPF檔案,而閱讀系統可以切換,就可以達到一些效果,像是: - 固定版面與文字重排切換 - 文字與有聲書切換 只是這個功能除了一些無障礙特化的閱讀系統有支援外,大多商用都不支援。電子書也都僅包含一個OPF檔案。 所以在EPUB 3.3中,將多重內容解釋移到獨立的規格來確保與舊版相容,同時也減少使用內容解釋(Rendition)這個詞彙。 ### 核心媒體變更 #### 圖片 除了原有的GIF、JPEG、PNG、SVG外,新增Google提出的WebP圖片格式。 #### 聲音 除了原有的MP3與MP4容器的AAC LC格式外,新增使用OGG容器的OPUS格式。 ### 目錄順序 原先目錄中的順序需要按照EPUB OPF檔案中書脊(Spine)的順序,但在3.3版中改成「推薦」,所以未來檢查器不會出現錯誤。 ### 識別碼 在EPUB 3.2版中,為了區分版本不同,提出了「發布識別碼」。也就是把「獨特識別碼`<dc:identifier>`」加上@後接「最終修改時間`<meta property="dcterms:modified">`」來作為辨識使用。 但因為會變成測試的一部分,所以這邊變成非強制性。 ### epub:type 由於逐漸使用HTML技術,`epub:type`有一部分過去是用於提供無障礙輔助,新版不再使用,而以HTML中的`role`來取代。 但在導覽文件(目錄, nav.xhtml)中,`<nav>`元素裡的`epub:type`還是為必要。 ### 副檔名 EPUB中有規定可以使用的核心媒體類型,同時有推薦副檔名。但會出現檔案內容副檔名不同的問題。所以3.3版不再推薦副檔名。 目前檔案類型與副檔名不同時,EPUB Check會提出警告,但可以在像Apple Books、Calibre等閱讀系統開啟。 ### HTML與XHTML EPUB 3.2中已經使用HTML 5最新版的技術。在目前的討論中,希望能相容HTML規則,也就是不一定要用XHTML。但因為多數閱讀系統都以XML為基礎建構,所以目前還沒有結論。
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up