diff --git a/README.md b/README.md index 6dc490c..f2df75b 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ -[![GitHub release](https://img.shields.io/github/release/ciromattia/kcc.svg)](https://github.com/ciromattia/kcc/releases) -[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/ciromattia/kcc/docker-publish.yml?label=docker%20build)](https://github.com/ciromattia/kcc/pkgs/container/kcc) +[![GitHub release](https://img.shields.io/github/release/ciromattia/kcc.svg)](https://github.com/ciromattia/kcc/releases) +[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/ciromattia/kcc/docker-publish.yml?label=docker%20build)](https://github.com/ciromattia/kcc/pkgs/container/kcc) **Kindle Comic Converter** is a Python app to convert comic/manga files or folders to EPUB, Panel View MOBI or E-Ink optimized CBZ. @@ -36,9 +36,9 @@ If you find **KCC** valuable you can consider donating to the authors: - **https://github.com/ciromattia/kcc/releases** -Click on **Assets** of the latest release. +Click on **Assets** of the latest release. -You probably want either +You probably want either - `KCC_*.*.*.exe` (Windows) - `kcc_macos_arm_*.*.*.dmg` (recent Mac with Apple Silicon M1 chip or later) - `kcc_macos_i386_*.*.*.dmg` (older Mac with Intel chip) @@ -129,7 +129,9 @@ sudo apt-get install python3 p7zip-full python3-pil python3-psutil python3-slugi 'KoAO': ("Kobo Aura ONE", (1404, 1872), Palette16, 1.8), 'KoN': ("Kobo Nia", (758, 1024), Palette16, 1.8), 'KoC': ("Kobo Clara HD/Kobo Clara 2E", (1072, 1448), Palette16, 1.8), + 'KoCC': ("Kobo Clara Colour", (1072, 1448), Palette16, 1.8), 'KoL': ("Kobo Libra H2O/Kobo Libra 2", (1264, 1680), Palette16, 1.8), + 'KoLC': ("Kobo Libra Colour", (1264, 1680), Palette16, 1.8), 'KoF': ("Kobo Forma", (1440, 1920), Palette16, 1.8), 'KoS': ("Kobo Sage", (1440, 1920), Palette16, 1.8), 'KoE': ("Kobo Elipsa", (1404, 1872), Palette16, 1.8), @@ -220,7 +222,7 @@ OTHER: This section is for developers who want to contribute to KCC or power users who want to run the latest code without waiting for an official release. -Easiest to use [GitHub Desktop](https://desktop.github.com) to clone the KCC repo. From GitHub Desktop, click on `Repository` in the toolbar, then `Command Prompt` (Windows)/`Terminal` (Mac) to open a window in the KCC repo. +Easiest to use [GitHub Desktop](https://desktop.github.com) to clone the KCC repo. From GitHub Desktop, click on `Repository` in the toolbar, then `Command Prompt` (Windows)/`Terminal` (Mac) to open a window in the KCC repo. Depending on your system [Python](https://www.python.org) may be called either `python` or `python3`. We use virtual environments (venv) to manage dependencies. @@ -265,7 +267,7 @@ python kcc.py ``` ## CREDITS -**KCC** is made by +**KCC** is made by - [Ciro Mattia Gonano](http://github.com/ciromattia) - [Paweł Jastrzębski](http://github.com/AcidWeb) @@ -300,5 +302,5 @@ The app relies and includes the following scripts: Please check [wiki page](https://github.com/ciromattia/kcc/wiki/Known-issues). ## COPYRIGHT -Copyright (c) 2012-2023 Ciro Mattia Gonano, Paweł Jastrzębski and Darodi. +Copyright (c) 2012-2023 Ciro Mattia Gonano, Paweł Jastrzębski and Darodi. **KCC** is released under ISC LICENSE; see [LICENSE.txt](./LICENSE.txt) for further details. diff --git a/kindlecomicconverter/KCC_gui.py b/kindlecomicconverter/KCC_gui.py index 18f30e1..a92f13e 100644 --- a/kindlecomicconverter/KCC_gui.py +++ b/kindlecomicconverter/KCC_gui.py @@ -642,6 +642,7 @@ class KCCGUI(KCC_ui.Ui_mainWindow): self.modeChange(2) else: self.modeChange(1) + GUI.colorBox.setChecked(profile['ForceColor']) self.changeFormat() GUI.gammaSlider.setValue(0) self.changeGamma(0) @@ -756,7 +757,7 @@ class KCCGUI(KCC_ui.Ui_mainWindow): def display_kindlegen_missing(self): self.addMessage( - 'Install KindleGen (link) to enable MOBI conversion for Kindles!', + 'Install KindleGen (link) to enable MOBI conversion for Kindles!', 'error' ) @@ -919,67 +920,71 @@ class KCCGUI(KCC_ui.Ui_mainWindow): self.profiles = { "Kindle Oasis 9/10": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': True, 'Label': 'KO'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KO'}, "Kindle Oasis 8": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': True, 'Label': 'KV'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KV'}, "Kindle Voyage": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': True, 'Label': 'KV'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KV'}, "Kindle Scribe": { - 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': False, 'Label': 'KS', + 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KS', }, "Kindle 11": { - 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': True, 'Label': 'K11', + 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'K11', }, "Kindle PW 11": { - 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': True, 'Label': 'KPW5', + 'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KPW5', }, "Kindle PW 7/10": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': True, 'Label': 'KV'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KV'}, "Kindle PW 5/6": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'KPW'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KPW'}, "Kindle 4/5/7/8/10": {'PVOptions': True, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'K578'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'K578'}, "Kindle DX": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 2, - 'DefaultUpscale': False, 'Label': 'KDX'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KDX'}, "Kobo Mini/Touch": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': False, 'Label': 'KoMT'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KoMT'}, "Kobo Glo": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': False, 'Label': 'KoG'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KoG'}, "Kobo Glo HD": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': False, 'Label': 'KoGHD'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KoGHD'}, "Kobo Aura": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': False, 'Label': 'KoA'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'KoA'}, "Kobo Aura HD": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoAHD'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoAHD'}, "Kobo Aura H2O": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoAH2O'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoAH2O'}, "Kobo Aura ONE": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoAO'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoAO'}, "Kobo Clara HD": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoC'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoC'}, "Kobo Libra H2O": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoL'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoL'}, "Kobo Forma": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, - 'DefaultUpscale': True, 'Label': 'KoF'}, + 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoF'}, "Kindle 1": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'K1'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'K1'}, "Kindle 2": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'K2'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'K2'}, "Kindle Keyboard": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'K34'}, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'K34'}, "Kindle Touch": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 0, - 'DefaultUpscale': False, 'Label': 'K34'}, - "Kobo Nia": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, + 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'K34'}, + "Kobo Nia": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoN'}, - "Kobo Clara 2E": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, + "Kobo Clara 2E": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoC'}, - "Kobo Libra 2": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, + "Kobo Clara Colour": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': True, + 'Label': 'KoCC'}, + "Kobo Libra 2": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoL'}, - "Kobo Sage": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, + "Kobo Libra Colour": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': True, + 'Label': 'KoLC'}, + "Kobo Sage": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoS'}, - "Kobo Elipsa": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, + "Kobo Elipsa": {'PVOptions': False, 'ForceExpert': False, 'DefaultFormat': 1, 'DefaultUpscale': True, 'ForceColor': False, 'Label': 'KoE'}, - "Other": {'PVOptions': False, 'ForceExpert': True, 'DefaultFormat': 1, 'DefaultUpscale': False, + "Other": {'PVOptions': False, 'ForceExpert': True, 'DefaultFormat': 1, 'DefaultUpscale': False, 'ForceColor': False, 'Label': 'OTHER'}, } profilesGUI = [ @@ -989,8 +994,10 @@ class KCCGUI(KCC_ui.Ui_mainWindow): "Kindle Oasis 9/10", "Separator", "Kobo Clara 2E", + "Kobo Clara Colour", "Kobo Sage", "Kobo Libra 2", + "Kobo Libra Colour", "Kobo Elipsa", "Kobo Nia", "Separator", diff --git a/kindlecomicconverter/comic2ebook.py b/kindlecomicconverter/comic2ebook.py index 48d439d..892dcae 100755 --- a/kindlecomicconverter/comic2ebook.py +++ b/kindlecomicconverter/comic2ebook.py @@ -958,7 +958,7 @@ def makeParser(): main_options.add_argument("-p", "--profile", action="store", dest="profile", default="KV", help="Device profile (Available options: K1, K2, K34, K578, KDX, KPW, KPW5, KV, KO, " - "K11, KS, KoMT, KoG, KoGHD, KoA, KoAHD, KoAH2O, KoAO, KoN, KoC, KoL, KoF, KoS, KoE)" + "K11, KS, KoMT, KoG, KoGHD, KoA, KoAHD, KoAH2O, KoAO, KoN, KoC, KoCC, KoL, KoLC, KoF, KoS, KoE)" " [Default=KV]") main_options.add_argument("-m", "--manga-style", action="store_true", dest="righttoleft", default=False, help="Manga style (right-to-left reading and splitting)") @@ -1049,13 +1049,13 @@ def checkOptions(options): if options.profile in ['K1', 'K2', 'K34', 'K578', 'KPW', 'KPW5', 'KV', 'KO', 'K11', 'KS']: options.format = 'MOBI' elif options.profile in ['OTHER', 'KoMT', 'KoG', 'KoGHD', 'KoA', 'KoAHD', 'KoAH2O', 'KoAO', - 'KoN', 'KoC', 'KoL', 'KoF', 'KoS', 'KoE']: + 'KoN', 'KoC', 'KoCC', 'KoL', 'KoLC', 'KoF', 'KoS', 'KoE']: options.format = 'EPUB' elif options.profile in ['KDX']: options.format = 'CBZ' if options.profile in ['K1', 'K2', 'K34', 'K578', 'KPW', 'KPW5', 'KV', 'KO', 'K11', 'KS']: options.iskindle = True - elif options.profile in ['OTHER', 'KoMT', 'KoG', 'KoGHD', 'KoA', 'KoAHD', 'KoAH2O', 'KoAO', 'KoN', 'KoC', 'KoL', 'KoF', 'KoS', 'KoE']: + elif options.profile in ['OTHER', 'KoMT', 'KoG', 'KoGHD', 'KoA', 'KoAHD', 'KoAH2O', 'KoAO', 'KoN', 'KoC', 'KoCC', 'KoL', 'KoLC', 'KoF', 'KoS', 'KoE']: options.isKobo = True # Other Kobo devices probably support synthetic spreads as well, but # they haven't been tested. diff --git a/kindlecomicconverter/image.py b/kindlecomicconverter/image.py index 68a5519..ce82635 100755 --- a/kindlecomicconverter/image.py +++ b/kindlecomicconverter/image.py @@ -99,7 +99,9 @@ class ProfileData: 'KoAO': ("Kobo Aura ONE", (1404, 1872), Palette16, 1.8), 'KoN': ("Kobo Nia", (758, 1024), Palette16, 1.8), 'KoC': ("Kobo Clara HD/Kobo Clara 2E", (1072, 1448), Palette16, 1.8), + 'KoCC': ("Kobo Clara Colour", (1072, 1448), Palette16, 1.8), 'KoL': ("Kobo Libra H2O/Kobo Libra 2", (1264, 1680), Palette16, 1.8), + 'KoLC': ("Kobo Libra Colour", (1264, 1680), Palette16, 1.8), 'KoF': ("Kobo Forma", (1440, 1920), Palette16, 1.8), 'KoS': ("Kobo Sage", (1440, 1920), Palette16, 1.8), 'KoE': ("Kobo Elipsa", (1404, 1872), Palette16, 1.8),