From b312d8b4241021bb6985c2dcf7942f6d232989f3 Mon Sep 17 00:00:00 2001 From: wanghe Date: Tue, 13 Aug 2024 13:57:00 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=20Koodo=20Reader=20(?= =?UTF-8?q?#1920)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/koodo-reader/1.6.6/data.yml | 10 +++++++++ apps/koodo-reader/1.6.6/docker-compose.yml | 14 ++++++++++++ apps/koodo-reader/README.md | 24 +++++++++++++++++++++ apps/koodo-reader/data.yml | 19 ++++++++++++++++ apps/koodo-reader/logo.png | Bin 0 -> 8819 bytes 5 files changed, 67 insertions(+) create mode 100644 apps/koodo-reader/1.6.6/data.yml create mode 100644 apps/koodo-reader/1.6.6/docker-compose.yml create mode 100644 apps/koodo-reader/README.md create mode 100644 apps/koodo-reader/data.yml create mode 100644 apps/koodo-reader/logo.png diff --git a/apps/koodo-reader/1.6.6/data.yml b/apps/koodo-reader/1.6.6/data.yml new file mode 100644 index 000000000..fe2d4da41 --- /dev/null +++ b/apps/koodo-reader/1.6.6/data.yml @@ -0,0 +1,10 @@ +additionalProperties: + formFields: + - default: 8860 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/koodo-reader/1.6.6/docker-compose.yml b/apps/koodo-reader/1.6.6/docker-compose.yml new file mode 100644 index 000000000..1bd6328e5 --- /dev/null +++ b/apps/koodo-reader/1.6.6/docker-compose.yml @@ -0,0 +1,14 @@ +services: + koodo-reader: + image: liwangsheng/koodo-reader:1.6.6 + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:80 + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true diff --git a/apps/koodo-reader/README.md b/apps/koodo-reader/README.md new file mode 100644 index 000000000..39ceac1e8 --- /dev/null +++ b/apps/koodo-reader/README.md @@ -0,0 +1,24 @@ +# Koodo Reader + +**Koodo Reader** 是一个跨平台的电子书阅读器,支持多种格式的电子书,包括 EPUB、PDF、Kindle、纯文本、漫画、富文本、FB2、超文本等。Koodo Reader 支持 **Windows**,**macOS**,**Linux** 和 **网页版**,并且可以备份数据到 **Dropbox** 和 **Webdav**,支持自定义源文件夹,利用 OneDrive、百度网盘、iCloud、Dropbox 等进行多设备同步。 + + +## 特色 + +- 支持阅读格式: + - EPUB (**.epub**) + - 扫描文档 (**.pdf**) + - Kindle (**.azw3**, **.mobi**, **.azw**) + - 纯文本 (**.txt**) + - 漫画 (**.cbr**, **.cbz**, **.cbt**, **.cb7**) + - 富文本 (**.md**, **.docx**) + - FB2 (**.fb2**) + - 超文本 (**.html**, **.xml**, **.xhtml**, **.mhtml**, **.htm**, **.htm**) +- 支持 **Windows**,**macOS**,**Linux** 和 **网页版** +- 备份数据到 **Dropbox** 和 **Webdav** +- 自定义源文件夹,利用 OneDrive、百度网盘、iCloud、Dropbox 等进行多设备同步 +- 双页模式,单页模式,滚动模式 +- 听书功能,翻译功能,触控屏支持,批量导入图书 +- 支持目录,书签,笔记,高亮,书架,标签 +- 自定义字体,字体大小,行间距,段落间距,阅读背景色,文字颜色,屏幕亮度,文字下划线、斜体、文字阴影、字体粗细 +- 黑夜模式和主题色设置 \ No newline at end of file diff --git a/apps/koodo-reader/data.yml b/apps/koodo-reader/data.yml new file mode 100644 index 000000000..f83ce05cd --- /dev/null +++ b/apps/koodo-reader/data.yml @@ -0,0 +1,19 @@ +name: Koodo Reader +tags: + - 多媒体 +title: 一个跨平台的电子书阅读器 +description: 一个跨平台的电子书阅读器 +additionalProperties: + key: koodo-reader + name: Koodo Reader + tags: + - Media + shortDescZh: 一个跨平台的电子书阅读器 + shortDescEn: A cross-platform ebook reader + type: tool + crossVersionUpdate: true + limit: 0 + recommend: 0 + website: https://koodoreader.com/ + github: https://github.com/koodo-reader/koodo-reader + document: https://www.koodoreader.com/en/document diff --git a/apps/koodo-reader/logo.png b/apps/koodo-reader/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ae34559cae985cdfb4609c20258a097ef060717f GIT binary patch literal 8819 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 literal 0 KcmV+b0RR6000031