本文件為W3C於2019年05月08日發布之EPUB 3.2 Changes的翻譯版本。此翻譯版本係由台灣數位出版聯盟(Taiwan Digital Publishing Forum, TDPF)自願翻譯,譯者盡可能維持英文原文本意與翻譯品質,唯翻譯內容仍可能有所錯誤。如有發現錯誤或不妥之處,請透過GitHub與譯者聯繫、修正或建立issue。
本翻譯文件僅供參考,唯一的正式版本請以W3C網站發布之英文原文版為準。
翻譯版本最後更新日期:2022年01月23日
Copyright © 1999-2019 International Digital Publishing Forum™ and W3C® (MIT, ERCIM, Keio, Beihang)
EPUB是國際數位出版論壇(IDPF, International Digital Publishing Forum)的註冊商標
本文件敘述了EPUB® 3規格第二次小型改版的變更點,主要著重於關鍵變更與加筆。
本規格由EPUB 3社群小組所發表。並非W3C標準也不在W3C標準程序上。請注意本規格適用於W3C社群完整規範協議(FSA)。可進一步了解W3C社群與業界小組。
如果你想要對本文件提出意見,請寄送到public-epub3@w3.org((訂閱,存檔)。
EPUB是一種供數位出版品交換與遞送使用的格式,基於XML以及網頁標準。一本EPUB出版品可以被視為可受信賴的網頁內容包裝,用於表現一本數位書籍、雜誌,或者其他類型的出版品,可以被傳遞供線上或離線使用。
EPUB 3.2是EPUB 3規格的小改版,可以被視為EPUB 3.0.1與EPUB 3.1兩方的後繼。EPUB 3.1並未受到廣泛採納,所以社群小組決定制定EPUB 3.2以更能具備對EPUB 3.0.1的向後支援性,而恢復了許多在EPUB 3.1中做出的變更(各版本的EPUB都應該具備對舊版的相容性,唯有在EPUB出版品相容於舊版時,才會相容於新版)。
本文件敘述所有自EPUB 3.0.1的EPUB變更點,所以讀者無需預先複習EPUB 3.1規格,也可判斷此新版本從EPUB 3.0.1的變更。
本文件為非規範性。請參考EPUB規格以確認EPUB 3的最終資訊。
多數現存的EPUB 3.0.1檔案應不需修改就合於EPUB 3.2標準,所以內容作者無需改變其工作流程與處理方式。EPUB 3.2提供了一些更多的選項,並且正式建議內容創作者遵循EPUB無障礙輔助性規範。
網頁標準,如HTML、CSS以及SVG的改變可能會影響其合規性,所以EPUBCheck也會跟著改變。
EPUB 3.2最大的改變是與HTML、CSS和SVG等核心網頁規格的關係。過去EPUB僅指向特定(發布)日期版本的HTML或CSS。現在EPUB 3.2正式支援W3C所制定最新版本的HTML、CSS和SVG。這些版本會隨著時間進化,可以讓EPUB能夠與網頁一起保持最新狀態。
另外一項值得注意的變更是採用WOFF 2.0與SFNT字型為新的核心媒體類型資源。EPUB 3.2也不再推薦使用一些舊功能,例如:bindings
,epub:trigger
以及epub:switch.
。
為了讓EPUB標準更容易閱讀及參考,我們為標準做了明顯的結構變更。最主要的變化就是推出了頂層的EPUB規格作為開始點。之前定義於 [Publications301] 中對EPUB出版品以及閱讀系統的需求,現在則移到規格的最頂層,與出版品資源章節放在一起。所有一般術語也集中到頂層規格,同時為了提供共同採用的參考資料,也加入關鍵概念與術語的索引來為多個子規格提供導覽。
[Publications301] 改名為EPUB包裝3.2 [Packages32] 以更能反應透過包裝文件對內容釋義(Rendition)的定義。EPUB導覽文件定義則從 [ContentDocs301] 移到了包裝規格,作為包裝的中心元件,而非EPUB內容文件的一般功能。之前定義在本規格中的特性定義被移出到外部用語集中。
[MediaOverlays32] 的嵌入特性定義也移到了獨立的用語集,但結構沒有變更。
[ContentDocs32] 則是除了移除EPUB導覽文件定義外,僅做了些修飾調整。許多章節改名以更能反應其實際上並非獨特的文件類型、而是加強的內容文件(例如,「有腳本的內容文件」一章改名為「腳本」),但該章節的內容大多數沒有變更。
[OCF32] 同樣只做了小部分的文字與結構整理,沒有新增移除章節。
請參考issue tracker以獲得EPUB 3.2中對EPUB 3.0.1規格的澄清、修正錯字與其他問題。
EPUB 3.2推薦所有的EPUB出版品都能符合新版EPUB無障礙功能規格 [EPUBAccessibility] 。無障礙功能規格推薦包含具發現性的詮釋資料,以及讓內容支援 [WCAG20] 。
EPUB閱讀系統也推薦符合 [EPUBAccessibility] 中的需求。
EPUB 3.2新增對於外圍資源(Foreign Resource)的額外說明,當他們不出現在書脊也不嵌入在EPUB內容文件中時,則無須提供回退。
這項改變讓作者可以加入資料檔案供腳本使用,而無需提供非必要的回退,還有其他助益。
EPUB 3.2讓可以透過腳本存取不在EPUB容器中,而託管於遠端的字型與資源。
EPUB 3.2移除對閱讀系統支援EPUB規格化斷片識別碼 [EPUB-CFI] 之連結的需求(即為EPUB 3.0.1 EPUBCFI需求)。
EPUB 3.2更新了對「不支援」的定義,移除「被取代(superseded)」詞彙,並且添加「遺存(legacy)」功能的概念,其目的為保持向後相容。
請參考issue tracker以獲得EPUB 3.2改版中對EPUB包裝規格的澄清、修正錯字與其他問題的完整清單。
EPUB 3.2對包裝詮釋資料做出以下變更:
rendition:spread
屬性的portrait
值。rendition:viewport
特性。meta-auth
特性。display-seq
特性不再適用。創作者現在按照文件中的順序顯示。dc:subject
元素的authority
和term
屬性。marc21xml-record
、mods-record
、onix-record
,及xmp-signature
)。推薦使用一般性的record
來建立關聯。也可在link元素中加入properties
屬性以協助識別沒有獨特的媒體類型的紀錄類型。alternate
、acquire
與voicing
連結關聯。epubsc
(作為腳本元件)不再是保留的字首。EPUB 3.2也改變處理所連結紀錄的順序,優先處理連結記錄中的書籍資訊,才處理直接包含在包裝文件metadata
元素中的資訊。
最新草稿附錄中原在制定一個取得遠端紀錄的協定。該項作業目前已移除,會在另一份獨立的文件上繼續制定。
bindings
元素EPUB 3.2不再推薦於包裝文件中用bindings為object元素嵌入的外圍資源,提供替代性腳本回退(參照EPUB 3.0.1 bindings
)。
請參考issue tracker以獲得EPUB 3.2改版中對EPUB內容文件的澄清、修正錯字與其他問題的完整清單。
EPUB 3.0.1參照有日期的HTML 5.0和SVG 1.1版本,以至於將規格綁緊在這些特定的版本上。依照此模式,當新版HTML或者SVG發布時,EPUB都需要隨之改版。
為了確保EPUB 3.2可以跟隨這些規格的最新推薦版本一起更新,EPUB 3.2中,具日期的參考資料被去日期的參考資料所取代。這項改變意味著:當新推薦版本的HTML與SVG發布時,EPUB出版品立即可以使用。
這項變更結果造成移除SVG中,對animation元素和事件的使用限制,作者在使用這些SVG尚未完整支援的功能時,得要多加注意。
EPUB 3.2移除了EPUB樣式表子集。定義了更多通用CSS的支援要求作為替代:
視覺性的閱讀系統需要支援CSS。
EPUB 3.2使用「官方定義」的CSS,即為CSS工作組快照文件。來取代EPUB中的CSS子集
移除對position: fixed
的使用限制。
移除對position: absolute
的使用限制。
移除所有來自CSS Speech的-epub-
字首特性,因為缺少實作。
移除-epub-ruby-position
特性。
移除-epub-text-combine-horizontal
特性。
移除-epub-fullsize-kana
特性。
移除-epub-text-emphasis
縮寫特性。
移除-epub-text-orientation中use-glyph-orientation
與sideways-left
兩種值。
移除display特性中oeb-page-head
與oeb-page-foot
兩種值。EPUB 3.0.1中早已不再推薦。
EPUB規格在位置上,對EPUB出版品中如何使用樣式無法做出強制性的限制。CSS有著完整定義的錯誤處理機制,以及許多技巧(如@supports
和層疊)都可以讓作者活用更新的CSS功能,同時提供合理的回退方式。
EPUB 3.2新增了對閱讀系統的指引,應該優先使用作者指定或使用者所選擇的樣式,而非閱讀器自己的樣式,此需求透過覆蓋樣式達成,其列於閱讀系統適用性需求子章節中。
epub:type
使用所有值EPUB 3.2在epub:type
屬性中接受沒有字首的值,就算不屬於EPUB結構語意用語 [EPUB-SSV] 也行。
EPUB 3.2對於腳本支援作出以下變更:
容器內的腳本將限制使用於 [HTML] iframe
元素(移除embed
與object
)。
閱讀系統應該支援容器內的腳本(從「必需」降階,主要因為腳本造成的安全與隱私考量)。
閱讀系統應該支援固定版面文件在書脊層級的腳本,以及定義在rendition:flow特性中的「scrolled-doc」、「scrolled-continuous」顯示介面。
如果閱讀系統在文字重排文件中支援書脊層級的腳本,其必需支援「scrolled-doc」介面,以及應該支援「scrolled-continuous」介面。
switch
元素EPUB 3.2不再推薦使用switch
元素來控制內容的顯示(EPUB 3.0.1 switch
元素)。
trigger
元素EPUB 3.2不再推薦使用trigger
元素來宣告性控制聲音與影片內容(EPUB 3.0.1 trigger元素)。
推薦作者使用 [HTML] audio
與video
元素的原生控制。
也澄清了該物件於不同腳本脈絡,包括巢狀脈絡中的需求。
請參考issue tracker以獲得EPUB 3.2改版中對OCF規格的澄清、修正錯字與其他問題的完整清單。
澄清加密與壓縮的順序。新規則說明:當無法有效減少資源大小時,就不需要壓縮。
Compression
元素新的Compression
元素加入encryption.xml
綱要,用來識別資源是否被壓縮,以及提供原有的位元大小。
請參考issue tracker以獲得EPUB 3.2改版中對媒體層疊規格的澄清、修正錯字與其他問題的完整清單。
本次改版中,媒體層疊規格沒有大幅修正。
EPUB 3.2改版提出了 [EPUBAccessibility] 規格,敘述如何讓EPUB出版品能具無障礙輔助性以及發現性的細節。這項規格受 [WCAG20] 之影響,其也成為對EPUB出版品的需求。同時提供一份參考性文件 [EPUBAccessibilityTechniques] 來說明如何透過最佳實踐來達成需求。
本規格設計相容於舊版EPUB。作者可以立即用來檢查所製作的EPUB 3.0.1或2.0.1出版品是否符合無障礙需求。
EPUB規格化斷片識別碼從EPUB 3.2起不再作為參照對象。閱讀系統可選擇性支援。
替代樣式標籤規格從EPUB 3.2起不再作為參照對象。閱讀系統可選擇性支援。