什麼是 OPDS?

OPDS 是閱讀 App 和書目之間說話的方式。你每次在 Fablum 裡開啟目錄都會遇到它,只是通常沒察覺。

OPDS 是 Open Publication Distribution System 的縮寫。它是一個開放標準,用來把書目發布成另一個程式能 讀懂的樣子:一個由項目組成的訂閱來源,每一項帶著書名、作者、語言、封面,以及指向檔案本身的連結。閱讀 App 取回這個來源,再把它畫成一份書單。這裡面沒有任何東西專屬於某一家商店或某一個 App。

想法就這麼簡單。介紹一本書的網頁是寫給人看的;OPDS 目錄是寫給軟體看的。因為格式是定好的,App 才能做 網頁做不到的事:在目錄裡搜尋、篩選、把封面排成格狀,並且把下載直接交進你的書庫,而不是瀏覽器的下載 資料夾。

它和商店的差別

目錄不是商店。沒有購物車,不用結帳,也沒有帳號:一則 OPDS 項目就是一段描述加上一個或多個下載連結, App 順著連結走。圖書館、檔案機構和出版公共領域文本的人用它,正是因為中間沒有商業那一套。

它也不是檔案格式。EPUB 和 PDF 是書;OPDS 是指向這些書的索引。多數目錄不過是跑在 HTTP 上的 Atom 或 JSON,所以任何懂這個標準的閱讀 App 都能直接翻看,不需要外掛。

Fablum 在哪裡用它

Fablum 內建了一個公開目錄,它就是一個 OPDS 目錄。那個面板裡發生的一切,都是 App 在讀一個 OPDS 訂閱 來源並照著它做:你翻看的分類、搜尋、語言和類型篩選、下載、線上播放,都是如此。

  1. 1

    開啟 Fablum,在書庫裡點 +,選公開目錄。開啟的就是一個放著公共領域書籍和有聲書的 OPDS 目錄。

    iPhone 上的公開目錄面板浮在 Fablum 書庫之上,列著 Peter Pan、Dracula、Treasure Island 和 Sense and Sensibility,各帶封面、作者和一個 EN 標記
  2. 2

    在裡面搜尋,或者用語言和類型篩選。這兩樣都是 OPDS 的能力:App 向目錄要一個更窄的訂閱來源,然後重畫清單。

  3. 3

    點一本書並下載。項目裡的下載連結會被取回並匯入,之後這本書就能從你的書庫裡離線開啟。

這個標準涵蓋什麼

一個 OPDS 訂閱來源描述兩件事:導覽,也就是你翻看的分類和書架;以及取得,也就是你真正能下載的項目。 一則項目可以提供多個檔案(EPUB、PDF 或有聲書),App 會挑它能開啟的那個。搜尋也在標準之內,所以你是在 App 裡搜尋目錄,而不是在某個網站上。

規格是公開的,在 specs.opds.io 上公開維護;1.2 是多數目錄仍在發布的 Atom 版本,2.0 是用 JSON 寫的後繼版本。

同一個目錄的實用一面,見如何找免費電子書。

看看 Fablum 的內建目錄