Qt/Qml 電子書閱讀器


Intro

目標: 開源閱讀器

  • 全平台(包括Web)
  • 支持常見書籍格式(txt, epub, mobi, pdf等)
  • 實現主流閱讀器基本功能
  • Text書籍支持編輯與寫作

進度

目前的實現采取將文本繪制到圖片上的方式, 一些翻頁特效通過像素操作完成, 效果一般. 主要類結構如下

BookView (繼承自QQuickPaintedItem, 主顯示部件)

AbstractBookModel
 ├ TextBookModel
 ├ EpubBookModel
 ├ PdfBookModel
 └ ...

AbstractBookDelegate
 ├ SinglePageDelegate (單頁)
 │  ├ SlideDelegate (滑動)
 │  └ CurlDelegate (仿真)
 └ ...

BookView + TextBookModel + SlideDelegate/CurlDelegate

TextBookModel {
    id: textBookModel
    size: Qt.size(300, 450)
    font {
        family: "Microsoft YaHei Mono"
        pointSize: 12
        bold: true
    }
    backgroundColor: "#d4c4a0"
    textColor: "#2f2202"
}
SlideEffect {
    id: slideEffect
}
CurlEffect {
    id: curlEffect
}
BookView {
    id: bookView
    width: 300
    height: 450
    model: textBookModel
    effect: curlEffect
}

效果如下

由於直接進行了像素操作, 仿真特效有明顯鋸齒.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM