Kindle 上的開源閱讀器:Koreader

jopen 11年前發布 | 54K 次閱讀 Koreader 程序文檔工具

Kindle 上的開源閱讀器:Koreader

我們希望在我們的閱讀設備上能夠享受這些自由:

  1.  數字內容不被局限于特定廠商的專有系統的自由。
  2. 用戶可以獲得閱讀器軟件運行細節,保障數字內容不被非法窺探的自由。
  3. 用戶修改閱讀器軟件外觀和功能的自由。

Koreader 正是讓我們獲得這些自由的一個嘗試。Koreader 在 GPLv3 協議下發布,支持開放文檔格式 PDF、DJVU、EPUB,個人文檔轉化為這些開放格式后不會因為特定廠商的消失而使文檔失效;任何有興趣了解 Koreader 運行細節的人都可以 拿來研究并修改、添加自己想要的功能。

Koreader 項目來源于 Kindlepdfviewer,并重寫了 Kindlepdfviewer 界面層的大部分代碼,使模塊化程度更高。理論上 Koreader 能夠運行在所有基于 Linux 的閱讀設備上。如果你想要移植 Koreader 到其他閱讀器上的話,請參考項目的 Wiki 頁面:如何移植 Koreader 到其他系統。

Feature List

機型支持:

Kindle Touch、Kindle PaperWhite (K3,DXG,K4 的支持還在完善中)

格式支持:

PDF, DJVU, EPUB, HTML, MOBI, TXT, ZIP, CBZ, FB2, RTF, XPS, CHM, DOC

功能支持:

見參考[4]。

Architecture

Koreader 底層的文檔解析和渲染使用了優秀而且成熟的開源實現:

  • PDF 文檔的解析渲染使用小巧快速、低內存占用的 MuPDF。
  • DJVU 文檔的解析渲染使用了 DJVU 格式的開源實現 DjVuLibre
  • EPUB 和其他標記文檔使用 CoolReader 的渲染引擎 CREngine
  • 使用 K2pdfopt 來優化 PDF/DJVU 文檔在小屏幕設備上的排版。效果見這里
  • 其他開源庫如 luafilesystem, popen_nonshell 以及 freetype 等等。

Koreader 界面層和邏輯層使用嵌入式腳本語言 Lua 編寫,運行時通過 LuaJIT 即時編譯為機器碼來提升運行效率。KOReader 自帶一套超輕量級的GUI框架,可直接運行在支持楨緩存(FrameBuffer)設備的閱讀器上,也可以通過 SDL 獲得跨平臺的運行支持。 Koreader 自帶一個設備模擬器,方便開發者在桌面系統進行開發。有關開發的詳情請參考項目 Wiki 和 README

轉自:LinuxToy


項目主頁:http://www.baiduhome.net/lib/view/home/1364775491140

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!