tsopeh / mapaki Goto Github PK
View Code? Open in Web Editor NEWA no-brainer manga packer for Kindle.
License: MIT License
A no-brainer manga packer for Kindle.
License: MIT License
And it's quirky to reproduce.
sometimes the blank pages are "inserted": previous page and next page should be adjacent, I don't actually miss a page.
sometimes it "replaces" a existing page: I do miss a page here.
sometimes when I navigate back to a blank page, it shows.
sometimes when I navigate back to a previously shown page, it shows blank instead.
I tested three manga, two of them show this symptom, the 3rd doesn't, one thing I notice is that the problematic two has image resolution higher than kindle scribe, I'm guessing this is the culprit, at a glance this tool doesn't do resize.
Then I tried resizing the images to <= 1860x2480, this doesn't seem to solve the issue, but resize them to <= 1440x1920 seems to do the trick.
This is the OG Kindle Comic Converter
Thank you very much for making this tool to help me solve the resolution limit of kindlegen.
However, memory problems are always encountered when dealing with high-definition pictures.
It would be great if you could pay attention to this problem and make some improvements.
alll 192 pictures, resolution: 2160x3074
Thank you for your work! <3
`
goroutine 1 [running]:
runtime.throw({0x392e62, 0xd})
C:/Program Files (x86)/Go/src/runtime/panic.go:1077 +0x4d fp=0x2e307784 sp=0x2e307770 pc=0x16cc1d
runtime.(*mcache).allocLarge(0xbe0778, 0x4d00000, 0x1)
C:/Program Files (x86)/Go/src/runtime/mcache.go:236 +0x1c5 fp=0x2e3077b0 sp=0x2e307784 pc=0x147a75
runtime.mallocgc(0x4d00000, 0x0, 0x0)
C:/Program Files (x86)/Go/src/runtime/malloc.go:1127 +0x5bf fp=0x2e307804 sp=0x2e3077b0 pc=0x13f8bf
runtime.growslice(0x0, 0x4d00000, 0x0, 0x4d00000, 0x354f80)
C:/Program Files (x86)/Go/src/runtime/slice.go:266 +0x3d1 fp=0x2e307838 sp=0x2e307804 pc=0x182121
bytes.growSlice({0x78000000, 0x2602b66, 0x2680000}, 0x181859)
C:/Program Files (x86)/Go/src/bytes/buffer.go:249 +0x9e fp=0x2e307874 sp=0x2e307838 pc=0x22e90e
bytes.(*Buffer).grow(0x2ea7b860, 0x181859)
C:/Program Files (x86)/Go/src/bytes/buffer.go:151 +0x110 fp=0x2e30789c sp=0x2e307874 pc=0x22e3c0
bytes.(*Buffer).Write(0x2ea7b860, {0x7d560002, 0x181859, 0x1ffffe})
C:/Program Files (x86)/Go/src/bytes/buffer.go:179 +0x4a fp=0x2e3078b0 sp=0x2e30789c pc=0x22e56a
github.com/leotaku/mobi/jfif.Encode({0x3f4694, 0x2ea7b860}, {0x3f5444, 0x9912b10}, 0x0)
C:/Users/Administrator/go/pkg/mod/github.com/leotaku/[email protected]/jfif/jfif.go:36 +0x11b fp=0x2e3078e4 sp=0x2e3078b0 pc=0x30826b
github.com/leotaku/mobi/records.ImageRecord.Write(...)
C:/Users/Administrator/go/pkg/mod/github.com/leotaku/[email protected]/records/image.go:21
github.com/leotaku/mobi/records.(*ImageRecord).Write(0x2e3556b0, {0x3f4694, 0x2ea7b860})
:1 +0x4b fp=0x2e307904 sp=0x2e3078e4 pc=0x30c09b
github.com/leotaku/mobi/pdb.Database.Write({{0x980e1c8, 0x14}, {0x0, 0xe7791f700, 0x580980}, {0x2e2ef000, 0xed, 0x100}}, {0x3f45cc, 0xed5dbe8})
C:/Users/Administrator/go/pkg/mod/github.com/leotaku/[email protected]/pdb/pdb.go:68 +0x215 fp=0x2e307a54 sp=0x2e307904 pc=0x3078a5
github.com/tsopeh/mapaki/cmd/packer.PackMangaForKindle({{0x98122a0, 0x2d}, 0x0, 0x0, {0x394d41, 0x11}, {0x980e1c8, 0x14}, {0x38e420, 0x6}, ...})
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/cmd/packer/root.go:152 +0xe5a fp=0x2e307dcc sp=0x2e307a54 pc=0x331b2a
github.com/tsopeh/mapaki/cmd.glob..func1(0x57cd00, {0x98226c0, 0x0, 0x3})
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/cmd/root.go:36 +0x48f fp=0x2e307e84 sp=0x2e307dcc pc=0x332b8f
github.com/spf13/cobra.(*Command).execute(0x57cd00, {0x981c188, 0x3, 0x3})
C:/Users/Administrator/go/pkg/mod/github.com/spf13/[email protected]/command.go:940 +0x87e fp=0x2e307f20 sp=0x2e307e84 pc=0x29047e
github.com/spf13/cobra.(*Command).ExecuteC(0x57cd00)
C:/Users/Administrator/go/pkg/mod/github.com/spf13/[email protected]/command.go:1068 +0x40e fp=0x2e307f8c sp=0x2e307f20 pc=0x290c6e
github.com/spf13/cobra.(*Command).Execute(...)
C:/Users/Administrator/go/pkg/mod/github.com/spf13/[email protected]/command.go:992
github.com/tsopeh/mapaki/cmd.Execute()
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/cmd/root.go:51 +0x21 fp=0x2e307fa0 sp=0x2e307f8c pc=0x332c11
main.main()
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/main.go:6 +0x15 fp=0x2e307fa4 sp=0x2e307fa0 pc=0x332f85
runtime.main()
C:/Program Files (x86)/Go/src/runtime/proc.go:267 +0x2b7 fp=0x2e307ff0 sp=0x2e307fa4 pc=0x16f4f7
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x2e307ff4 sp=0x2e307ff0 pc=0x19c261
goroutine 2 [force gc (idle)]:
runtime.gopark(0x3b4c2c, 0x57fe00, 0x11, 0x14, 0x1)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9837fdc sp=0x9837fc8 pc=0x16f96d
runtime.goparkunlock(...)
C:/Program Files (x86)/Go/src/runtime/proc.go:404
runtime.forcegchelper()
C:/Program Files (x86)/Go/src/runtime/proc.go:322 +0xcf fp=0x9837ff0 sp=0x9837fdc pc=0x16f7bf
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9837ff4 sp=0x9837ff0 pc=0x19c261
created by runtime.init.5 in goroutine 1
C:/Program Files (x86)/Go/src/runtime/proc.go:310 +0x21
goroutine 3 [GC sweep wait]:
runtime.gopark(0x3b4c2c, 0x580800, 0xc, 0x14, 0x1)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9838fcc sp=0x9838fb8 pc=0x16f96d
runtime.goparkunlock(...)
C:/Program Files (x86)/Go/src/runtime/proc.go:404
runtime.bgsweep(0x98141c0)
C:/Program Files (x86)/Go/src/runtime/mgcsweep.go:321 +0xf4 fp=0x9838fe8 sp=0x9838fcc pc=0x159ac4
runtime.gcenable.func1()
C:/Program Files (x86)/Go/src/runtime/mgc.go:200 +0x25 fp=0x9838ff0 sp=0x9838fe8 pc=0x14bad5
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9838ff4 sp=0x9838ff0 pc=0x19c261
created by runtime.gcenable in goroutine 1
C:/Program Files (x86)/Go/src/runtime/mgc.go:200 +0x75
goroutine 4 [GC scavenge wait]:
runtime.gopark(0x3b4c2c, 0x580a40, 0xd, 0x14, 0x2)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9839fb8 sp=0x9839fa4 pc=0x16f96d
runtime.goparkunlock(...)
C:/Program Files (x86)/Go/src/runtime/proc.go:404
runtime.(*scavengerState).park(0x580a40)
C:/Program Files (x86)/Go/src/runtime/mgcscavenge.go:425 +0x5c fp=0x9839fcc sp=0x9839fb8 pc=0x156e2c
runtime.bgscavenge(0x98141c0)
C:/Program Files (x86)/Go/src/runtime/mgcscavenge.go:658 +0x6d fp=0x9839fe8 sp=0x9839fcc pc=0x1574ad
runtime.gcenable.func2()
C:/Program Files (x86)/Go/src/runtime/mgc.go:201 +0x25 fp=0x9839ff0 sp=0x9839fe8 pc=0x14ba95
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9839ff4 sp=0x9839ff0 pc=0x19c261
created by runtime.gcenable in goroutine 1
C:/Program Files (x86)/Go/src/runtime/mgc.go:201 +0xb5
goroutine 5 [finalizer wait]:
runtime.gopark(0x3b4ac0, 0x5a5f28, 0x10, 0x14, 0x1)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9836f98 sp=0x9836f84 pc=0x16f96d
runtime.runfinq()
C:/Program Files (x86)/Go/src/runtime/mfinal.go:193 +0xf8 fp=0x9836ff0 sp=0x9836f98 pc=0x14abf8
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9836ff4 sp=0x9836ff0 pc=0x19c261
created by runtime.createfing in goroutine 1
C:/Program Files (x86)/Go/src/runtime/mfinal.go:163 +0x5e
goroutine 20 [select]:
runtime.gopark(0x3b4c60, 0x0, 0x9, 0x18, 0x1)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x983dec8 sp=0x983deb4 pc=0x16f96d
runtime.selectgo(0x983dfd0, 0x983dfc8, 0x0, 0x0, 0x2, 0x1)
C:/Program Files (x86)/Go/src/runtime/select.go:327 +0xac8 fp=0x983dfa8 sp=0x983dec8 pc=0x17f258
github.com/cheggaaa/pb/v3.(*ProgressBar).writer(0x991e0a0, 0x9815380)
C:/Users/Administrator/go/pkg/mod/github.com/cheggaaa/pb/[email protected]/pb.go:184 +0x93 fp=0x983dfe4 sp=0x983dfa8 pc=0x2ce853
github.com/cheggaaa/pb/v3.(*ProgressBar).Start.func2()
C:/Users/Administrator/go/pkg/mod/github.com/cheggaaa/pb/[email protected]/pb.go:178 +0x2c fp=0x983dff0 sp=0x983dfe4 pc=0x2ce75c
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x983dff4 sp=0x983dff0 pc=0x19c261
created by github.com/cheggaaa/pb/v3.(*ProgressBar).Start in goroutine 1
C:/Users/Administrator/go/pkg/mod/github.com/cheggaaa/pb/[email protected]/pb.go:178 +0x24d
goroutine 13 [chan receive]:
runtime.gopark(0x3b4a9c, 0x98143b0, 0xe, 0x17, 0x2)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x992bf4c sp=0x992bf38 pc=0x16f96d
runtime.chanrecv(0x9814380, 0x992bfc4, 0x1)
C:/Program Files (x86)/Go/src/runtime/chan.go:583 +0x3ad fp=0x992bf88 sp=0x992bf4c pc=0x13986d
runtime.chanrecv2(0x9814380, 0x992bfc4)
C:/Program Files (x86)/Go/src/runtime/chan.go:447 +0x1c fp=0x992bf9c sp=0x992bf88 pc=0x1394ac
github.com/tsopeh/mapaki/cmd/packer.PackMangaForKindle.func1()
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/cmd/packer/root.go:61 +0x4b fp=0x992bff0 sp=0x992bf9c pc=0x33222b
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x992bff4 sp=0x992bff0 pc=0x19c261
created by github.com/tsopeh/mapaki/cmd/packer.PackMangaForKindle in goroutine 1
C:/Users/Administrator/go/pkg/mod/github.com/tsopeh/[email protected]/cmd/packer/root.go:60 +0x1f1
goroutine 14 [GC worker (idle)]:
runtime.gopark(0x3b4ad4, 0x9810300, 0x1a, 0x14, 0x0)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9924f94 sp=0x9924f80 pc=0x16f96d
runtime.gcBgMarkWorker()
C:/Program Files (x86)/Go/src/runtime/mgc.go:1295 +0xdc fp=0x9924ff0 sp=0x9924f94 pc=0x14dd2c
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9924ff4 sp=0x9924ff0 pc=0x19c261
created by runtime.gcBgMarkStartWorkers in goroutine 10
C:/Program Files (x86)/Go/src/runtime/mgc.go:1219 +0x23
goroutine 18 [GC worker (idle)]:
runtime.gopark(0x3b4ad4, 0x9888108, 0x1a, 0x14, 0x0)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9832f94 sp=0x9832f80 pc=0x16f96d
runtime.gcBgMarkWorker()
C:/Program Files (x86)/Go/src/runtime/mgc.go:1295 +0xdc fp=0x9832ff0 sp=0x9832f94 pc=0x14dd2c
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9832ff4 sp=0x9832ff0 pc=0x19c261
created by runtime.gcBgMarkStartWorkers in goroutine 10
C:/Program Files (x86)/Go/src/runtime/mgc.go:1219 +0x23
goroutine 19 [GC worker (idle)]:
runtime.gopark(0x3b4ad4, 0x99a0000, 0x1a, 0x14, 0x0)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x98aef94 sp=0x98aef80 pc=0x16f96d
runtime.gcBgMarkWorker()
C:/Program Files (x86)/Go/src/runtime/mgc.go:1295 +0xdc fp=0x98aeff0 sp=0x98aef94 pc=0x14dd2c
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x98aeff4 sp=0x98aeff0 pc=0x19c261
created by runtime.gcBgMarkStartWorkers in goroutine 10
C:/Program Files (x86)/Go/src/runtime/mgc.go:1219 +0x23
goroutine 34 [GC worker (idle)]:
runtime.gopark(0x3b4ad4, 0x9888120, 0x1a, 0x14, 0x0)
C:/Program Files (x86)/Go/src/runtime/proc.go:398 +0xfd fp=0x9834f94 sp=0x9834f80 pc=0x16f96d
runtime.gcBgMarkWorker()
C:/Program Files (x86)/Go/src/runtime/mgc.go:1295 +0xdc fp=0x9834ff0 sp=0x9834f94 pc=0x14dd2c
runtime.goexit()
C:/Program Files (x86)/Go/src/runtime/asm_386.s:1363 +0x1 fp=0x9834ff4 sp=0x9834ff0 pc=0x19c261
created by runtime.gcBgMarkStartWorkers in goroutine 10
C:/Program Files (x86)/Go/src/runtime/mgc.go:1219 +0x23
`
Hi. I wanted to thank you for making this little program.
I just tried it and it works amazing.
I have a question tough. For long running mangas like the One Piece that is about 7.7GB and counting. I'm worried about being too large to transfer and too slow to open in a kindle device.
Any thoughts on that?
I currently use celogeek/go-comic-converter to make epubs
and I want to start using mapaki for awz3 but some mangas are so big that it's basically all that fits in the kindle.
Any tricks or suggestions?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.