Alex Xu
9a2a09eab9
memory optimization: store metadata in filenames, not a global dict ( #853 )
...
* remove options.imgMetadata and store metadata in filename
* make kcc much more memory efficient by removing imgMetadata and imgOld dicts
2025-03-09 16:52:07 -07:00
Alex Xu
88cf2fd21f
fix sanitize-first bug
2025-03-09 16:50:15 -07:00
Vinh Quang Tran
7a3ed262b1
fix: disabled overriding title ( #857 )
2025-03-09 16:22:34 -07:00
Alex Xu
9e204aad76
rename images before processing to fix splitting issues ( #852 )
...
* rename images before processing to fix splitting issues
* import pathlib
* 9999 page limit
2025-03-07 07:59:04 -08:00
Alex Xu
01625904d1
huge speed optimization on HDD by removing md5 ( #845 )
...
* Eliminate unnecessary use of MD5 checksum
md5checksum() computes the actual checksum of a specified file, which is appropriately expensive, but the code seemed to be using the checksum result as a key into the imgMetadata dictionary to avoid handling image files being renamed during processing steps. This seems like a very expensive way to handle the rename so instead, I now update the imgMetadata keys with the new filename in the one place that the rename happens, and avoid MD5 checksums entirely.
* merge conflicts
* Add missing handling for image path renames due to nested chapter folder name
* merge conflicts
* merge conflicts
* add perf_counters
* imgFileProcessing perf_counter
* use startswith and removeprefix
---------
Co-authored-by: utopiafallen <utopiafallen@gmail.com >
2025-03-04 11:28:23 -08:00
Alex Xu
5f8526da44
all image files have unique ordered names ( #848 )
2025-03-03 07:50:21 -08:00
Alex Xu
1159e737a0
small correction to 7z ( #847 )
2025-03-02 19:55:45 -08:00
Alex Xu
1a3cd6c916
add perf_counter to makeBook ( #846 )
2025-03-02 12:24:49 -08:00
Alex Xu
e1e6d587f4
makeZIP now prefers 7z for SPEED ( #844 )
2025-03-02 11:08:27 -08:00
Alex Xu
be147fe7e5
saves several seconds per file ( #841 )
2025-02-28 20:11:11 -08:00
utopiafallen
62ffa2bc80
Improve processing performance by partially undoing "Refactored detection of corrupted files"
...
Commit f952634971 moved image corruption detection out from the ComicPage constructor and into a standalone detectCorruption() function. This led to a performance regression because now corruption detection happens in a single thread when it used to be distributed across worker threads, and because a source image is now loaded twice in memory: once during corruption detection and once when actually going to process the image.
Image file corruption detection is now back inside the ComicPage constructor and the extra load() has been removed because the convert() call will automatically invoke load() and most likely throw the same exceptions.
2025-02-28 19:49:13 -08:00
Alex Xu
11186d07c0
fix file splitting/chunking for real in certain situations ( #839 )
...
* fix file splitting without ComicInfo.xml
* remove dead var
2025-02-28 19:19:11 -08:00
Alex Xu
11a395e983
fix pdf workdir ( #830 )
2025-02-20 18:24:06 -08:00
Alex Xu
2e39a8c227
add jpeg2000 ( #828 )
2025-02-19 16:29:26 -08:00
Alex Xu
02535421a0
rename batch to chunk ( #826 )
2025-02-12 15:31:40 -08:00
Alex Xu
3d4fae62d8
reduce rainbow checkbox ( #824 )
2025-02-09 19:10:56 -08:00
Alex Xu
ecee7cf6f5
don't sanitize twice
2025-02-06 14:07:09 -08:00
Alex Xu
b0a5558da1
write temp files next to source instead of on main ssd ( #820 )
...
* extract to same folder
* rename split to batch
* write temp files to source
2025-01-30 12:42:02 -08:00
Alex Xu
1b487c18d6
with certain file structures: fix large file chunking, ComicInfo.xml, permissions ( #819 )
...
* fix nested folder extraction
* add comicinfo.xml handling
* sanitize
* add error handling
* space
2025-01-30 11:31:33 -08:00
X5Games / Neyney10
2f703ef92c
Inter-panel cropping method. ( #810 )
...
* Inter-panel cropping method.
* 1. Save interpanelcrop option.
2. Update readme with the the new interpanelcrop argument.
3. Add a tooltip to the inter-panel crop box.
2025-01-27 13:44:23 -08:00
Alex Xu
317fb33fd0
No Rotate option ( #785 )
...
* no rotate
* Revert "no rotate"
This reverts commit b6f1fe8882 .
* implement norotate
2025-01-03 19:43:20 -08:00
Alex Xu
315b6e150d
enable synthetic spreads for all devices ( #789 )
2024-12-30 22:15:41 -08:00
Alex Xu
434fe90b00
don't delete/dedupe covers, just change initial alignment ( #784 )
...
* don't delete covers, just change initial alignment
* replace dedupecover with spreadshift
2024-12-19 09:06:59 -08:00
Bradley Newman
a9360e6bc3
Add --nokepub option
...
By setting this to true, '.epub' format will be output rather than
'.kepub.epub'
2024-12-13 15:42:19 -08:00
Alex Xu
dbe6043542
add center spread property
2024-12-13 10:13:18 -08:00
Alex Xu
e1a318145d
fix left to right comic spread alignment
2024-12-13 09:59:33 -08:00
Alex Xu
4e6ee8b59b
fix bookmark drift when dedupecover is checked ( #772 )
...
* remove cover chapter as needed
* just skip cover chapter
* fix space
2024-11-11 08:19:04 -08:00
Alex Xu
78c014bf22
simplify cover upload on newer MTP based Kindles by replacing EBOK with PDOC ( #767 )
...
* simplify covers by replacing ebok with pdoc
* refactor
* fix order
2024-11-07 21:53:59 -08:00
Alex Xu
5168cd73c4
Make it easier to add new profiles ( #764 )
...
* refactor
* put pw12 under oasis profile
* remove kindle 12 tag
* separate ebok and pdoc
* put cs 12 on top
2024-11-04 20:24:12 -08:00
Alex Xu
f7f19b99da
fix ComicInfo.xml chapters
2024-11-04 09:04:17 -08:00
Alex Xu
8d204668a7
add kindle 12th gen, including colorsoft ( #762 )
...
* add kindle colorsoft
* fix typo
2024-10-23 21:17:22 -07:00
Alex Xu
ab089adbca
fix no such file or directory 7z ( #728 )
...
* refactor archive code
* simplify code
* Revert "simplify code"
This reverts commit 3e90dd66c3 .
* add link to missing extraction software
* fix tar
* fix wording
2024-08-09 17:08:13 -07:00
Alex Xu
6738b70487
don't display upscale warning on kindle scribe
2024-06-09 08:00:55 -07:00
Dominik Gedon
44094bdb21
Add Kobo Libra/Clara colour ( #703 )
...
* fix: trailing whitespaces
* Add color toggle mode
* Add Kobo Libra Colour
Signed-off-by: Dominik Gedon <dominik@gedon.org >
* Add Kobo Clara Colour
Signed-off-by: Dominik Gedon <dominik@gedon.org >
* Address suggestions
* Address more suggestions
---------
Signed-off-by: Dominik Gedon <dominik@gedon.org >
2024-06-09 08:00:25 -07:00
Bruno Resende
c35dd137ea
Add de-dupe cover option for landscape alignment ( #561 )
...
* Adds --author argument to CLI
* Add --prefercoverfile and --nocoveraspage arguments to CLI
* cover checks only run once
* Revert "cover checks only run once"
This reverts commit ad7b3cc106 .
* split off author portion
* split off author
* remove prefercover
* whitespace fixes
* rename to duplicatecover
* whitespace fixes
* rename to dedupecover
* add dedupe to UI
---------
Co-authored-by: Alex Xu <alexkurosakimh3@gmail.com >
2024-05-17 09:56:22 -07:00
Alex Xu
1ea008c8f3
reduce dependency on 7z, unar, homebrew by using builtin tar ( #693 )
...
* reduce dependency on 7z, unar, homebrew by using builtin tar
* update readme
* fix typo
* add editor text
* remove unar
* Revert "remove unar"
This reverts commit 2c4b239d67 .
* Revert "fix typo"
This reverts commit 79752c7f38 .
* Revert "update readme"
This reverts commit 4f5c727a2d .
2024-05-17 09:56:04 -07:00
Alex Xu
cbc1ed5db4
Kindle Scribe 1860 max width ( #691 )
...
* Kindle Scribe 1860 max width
* create kindle_scribe_azw3 var
* clean up code
2024-05-17 09:55:43 -07:00
Alex Xu
4a9f693574
Adds --author argument to CLI ( #683 )
2024-04-16 14:59:54 -07:00
Alex Xu
49bf80f5d8
LOAD_TRUNCATED_IMAGES = True
2024-03-04 21:36:07 -08:00
Alex Xu
ee31b784cb
Add native Apple Silicon support by upgrading qt5 to qt6 ( #523 )
...
* initial upgrade
* fix epub icon
* pyside6
* fix tray icon
* add spaces
* add comment back
* change exec
* edit shared
* Add CheckState enums
* add mozJpeg
* fix batch
* import CheckedState
* remove references to qt5
* add mozJpeg warning
* Update package-linux.yml
* Update package-linux.yml
* Update Dockerfile-base
* Update README.md
* Update package-linux.yml
* Update README.md
* Update README.md
* add mozjpeg to gitignore
* add warning text
* fix state issue
* use same settings save location as qt5
* remove space
* remove mozJpeg
* update Dockerfile-base file version
* use getattr instead of eval
* undo readme changes
* undo conda
* undo gitignore
---------
Co-authored-by: Alexander Xu <alexanderx@qualtrics.com >
Co-authored-by: darodi <4682830+darodi@users.noreply.github.com >
2024-01-02 14:08:39 -08:00
VampiroMedicado
e8502f008a
hide subprocess consoles on Windows ( #656 )
2024-01-01 18:11:55 -08:00
Alex Xu
3988f2012f
fix p7zip-rar error and files with ' or " by using arg lists instead of strings ( #633 )
...
* Revert "Revert "fix files with ' or " by using arg lists instead of strings (#581 )" (#628 )"
This reverts commit b528dab711 .
* handle FileNotFoundError
* modify unar handling
* remove unneeded utf-8 encoding
* dont uft-8 encode 7z
* remove utf-8 encoding from 7z calls
* don't extract stderr
* add extraction error
* edit error message
* remove debug
* remove kindlegen location from GUI
* remove comment
2023-12-21 12:52:35 -08:00
Alex Xu
6cdd9d5909
change kobo epub filenames ( #616 )
2023-12-21 12:51:26 -08:00
Alex Xu
a99c63acea
use os_sorted over natsorted
2023-12-21 09:43:07 -08:00
Alex Xu
b528dab711
Revert "fix files with ' or " by using arg lists instead of strings ( #581 )" ( #628 )
...
This reverts commit 431862a2e9 .
2023-11-28 08:20:14 -08:00
Alex Xu
da1ba64bd2
skip bookmarks if split ( #620 )
2023-11-28 06:54:47 -08:00
Alex Xu
68da853e42
fix page order in pdf and more by using natural sort instead of python sort ( #589 )
...
* use natsorted
* Add fast
2023-11-09 23:00:44 +00:00
Alex Xu
431862a2e9
fix files with ' or " by using arg lists instead of strings ( #581 )
...
* replace popen with subprocess run
* add splitlines
* remove stdin
* fix xml
* fix error logging and 7zip
2023-11-09 22:27:09 +00:00
Alex Xu
60e9f075b8
replace exit() with sys.exit() ( #590 )
2023-09-08 20:18:32 +00:00
Alex Xu
6836c20377
Fix page order and bookmarks by renaming numerically ( #507 )
...
* disable slugify
* rename to digits
* add -kcc
* add ABC checks
* remove kobo
* don't use if statements
* rename to suffix
* re-order check
* only slugify directories
* add break
* add sorted
* fix kcc-b logic
* add kcc to front of filename
---------
Co-authored-by: Alexander Xu <alexanderx@qualtrics.com >
2023-08-07 18:22:46 +00:00