muffinman-io-lxkzuw.txt (23929B)
1 [1]Jump to content 2 [2] [4] Art /[5] Blog /[6] Projects /[7] About /[8] Stats /Search 3 4 The Tiny Book of Great Joys 5 6 10. February 2025 7 Posted in [12]Random 8 · 19 minutes read 9 10 If you are interested in how I over-engineered the process of making a tiny 11 book for my wife, using AI, a pen plotter, a 3D printer, and a lot of time, you 12 are in the right place. The book is titled The Tiny Book of Great Joys (Mala 13 Knjiga Velikih Radosti in Serbian) , and here is how it turned out: 14 15 The Tiny Book of Great Joys sitting on the table slightly open with the title 16 page showing 17 [13] Photo 1 [14] Photo 1 [15] Photo 1 18 19 My wife is delighted with it, so it was worth all the effort. 20 21 This post will take you through the process. It will be a long one, but please 22 stick around - I promise there will be a lot of pretty pictures. 23 24 Here is the outline of the post: 25 26 • [16]The idea 27 • [17]Drawings 28 • [18]Text 29 • [19]Plotting 30 • [20]Bookbinding 31 • [21]The finished book 32 • [22]Timeline 33 • [23]Conclusion 34 35 The idea[24] # 36 37 I had this idea for a while after seeing something similar somewhere on the 38 internet.. Since then, I always wanted to make one for my wife - a physically 39 small book with a bunch of small drawings of our memories together, inside 40 jokes, and little things she likes. 41 42 I wanted the illustrations to be hand-drawn, and I had a plan to ask my friend 43 to do them. But I knew he would refuse any kind of payment, so I felt bad 44 adding more work to his plate. So I shelved the idea, but every now and then, 45 it would pop up in my head. 46 47 Fast forward a few years - we got a kid, and our routine completely changed. We 48 are enjoying it a lot, but it can be very exhausting, and every day seems 49 identical to the last. That's why I decided I needed to do something for her to 50 break the routine. The book idea seemed perfect - personal and handcrafted - so 51 I gave it a try. 52 53 To be able to do everything myself, I went to create digital drawings and then 54 draw them on paper using my trusty pen plotter. 55 56 With the idea in place, I moved on to creating the drawings - which turned out 57 to be a challenge of its own. 58 59 Drawings[25] # 60 61 For pen plotting, one needs vector files, so I started drawing in Figma. 62 Unfortunately, I quickly realized that my drawing skills would not get me the 63 result I had envisioned. Determined to do it this time, I decided to try using 64 AI to generate images. 65 66 Midjourney[26] # 67 68 I got myself a Midjourney subscription and started playing with it. It took a 69 lot of failed attempts to figure out how to get drawings that were simple and 70 had a strong hand-drawn feel to them. Even then, I ended up editing every one 71 of them, but more on that later. 72 73 One of the first images I was satisfied with (it didn't end up in the book, 74 though): 75 76 Black and white drawing of a cute fox curled up sleeping. 77 78 It took a lot of time, but it was fun. Failed attempts were often quirky and 79 funny, and I was learning how to use the tool. And it made me feel like a 80 secret agent, doing it next to my wife, who had no idea what I was up to. 81 82 A bunch of attempts at drawing Link from Zelda 83 84 Prompting[27] # 85 86 I may be wrong, but I think Midjourney wasn't built for the kind of 87 illustrations I had in mind. I was after simple, hand-drawn illustrations that 88 felt personal. Luckily, I found a style reference (--sref 230156437) that 89 worked well for my case. I used it to generate almost all of the drawings that 90 ended up in the book. For those who haven't used Midjourney - you can use 91 images as style references to influence the style of images you want to 92 generate. 93 94 Most of my images were generated using that sref code and a style weight (A 95 number that tells Midjourney how much the reference should influence the final 96 output) between 150 and 400 (it can go from 0 to 1000). 97 98 As for the prompts, these are the key terms I combined with the description and 99 the style reference: 100 101 • black and white 102 • vector line art 103 • stylized simple drawing 104 • solid white background 105 • isolated on white background 106 • low detail 107 • clean edges 108 • sketch 109 • rough sketch 110 • children's coloring book 111 112 It took me a lot of tries - between 10 and 30 attempts for each image you see 113 in the book. 114 115 AI to Plotter[28] # 116 117 Once I solved the image generation part, I had to figure out how to turn them 118 into vector files for plotting. The first thing I tried was something similar 119 to halftone. As you can see below, in this process, the images completely lost 120 the hand-drawn feel. 121 122 The same fox drawing, but but drawn with a lot of small dots, using technique 123 similar to halftone 124 125 Then I remembered [29]this plot of Marble Machine X I did a while ago, for 126 which I used AutoTrace to convert the original image to a vector file. The 127 great thing about AutoTrace is that it supports "centerline tracing". And this 128 time, I learned that Inkscape has a great AutoTrace plugin, which made it even 129 easier to convert. 130 131 What makes centerline tracing different[30] # 132 133 Most of the tools that convert raster to vector images do it by outlining 134 shapes. This is not suitable for plotting, as each line in the original image 135 becomes a sausage-like shape. Centerline tracing, on the other hand, tries to 136 draw a single line following the middle path through shapes. Don't worry if it 137 sounds confusing; the example below should make things clearer. 138 139 Here is the image of Link from The Legend of Zelda generated by Midjourney: 140 141 Black and white cartoony drawing of Link from The Legend of Zelda standing with 142 a sword and shield. 143 144 After applying a common vectorization technique, we get this. As you can see, 145 each line in the original drawing is now outlined, creating this messy-looking 146 image. 147 148 Vectorized image of Link using common vectorization technique with each area 149 outlined black 150 151 But if we use centerline tracing, it suddenly looks a lot more like a drawing. 152 It is not perfect, but don't worry - we are going to clean it up in the next 153 step. 154 155 Vectorized image of Link using centerline tracing, looking much more like a 156 real drawing 157 158 Cleaning up[31] # 159 160 In the points where lines touch or cross, AutoTrace is not sure which line to 161 follow and creates these funky-looking joints. Here is an exaggerated example 162 to show you what I'm talking about. Input is the raster image at the top and 163 the vectorized result is at the bottom: 164 165 Lines that are crossing and touching before and after centerline tracing 166 167 But I found out that if I roughly separate these lines, I get a much better 168 result. 169 170 Lines that are crossing and touching, but slightly separated before tracing, 171 with the result being much better 172 173 Let's now apply this technique to the image of Link we've seen above. After 174 separating lines (and some cleaning up) this is the image I ended up with. It 175 is rough, but it is only used as an input for the tracing process, so it 176 doesn't really matter. This was manual and somewhat tedious process, but I 177 enjoyed it overall. It was a sort of meditation for me. 178 179 The image of Link, but this time with lines slightly separated and details 180 removed 181 182 And finally, when we trace this image, we get a really nice and clean vector 183 file perfect for plotting. Very clean vectorized image of Link 184 185 Here is another example. We start with the image I generated using Midjourney: 186 187 Black and white drawing of a woman, man, little girl and a dog walking in a 188 forest 189 190 After editing, removing details and separating lines, we get this one: 191 192 The same image of the family walking in the forest but with lines separated and 193 some parts redrawn 194 195 And the traced vector result: 196 197 Vectorized image of of the family walking in the forest 198 199 You'll notice that in both examples I did some redrawing (For example, in the 200 second image, I redraw the dog completely to look like our dog Zappa.) . I did 201 that for pretty much all of the images, to fix things I wasn't able to polish 202 using prompts. I also removed a lot of details to make sure images are crisp 203 and readable at the small size. 204 205 Final image flow[32] # 206 207 All of this took a lot of experimentation, but it gave me a pretty solid 208 workflow which I used to generate all of the images. The complete flow looks 209 like this: 210 211 • Generate images using Midjourney. 212 • Upscale them two times, because upscaled images were easier to edit and 213 tracing was more precise. 214 • Clean up, redraw and separate lines by hand using Gimp. 215 • Use Inkscape plugin to run AutoTrace centerline tracing. 216 217 It took me a while to generate all the images, and the fact that I was trying 218 to keep it a secret from my wife didn't help. I think I did it over the span of 219 two weeks, mostly in the evening after she would go to bed. 220 221 Ganon (Name of the main villain Link fights against in The Legend of Zelda 222 series) never stood a chance![33] # 223 224 Before we continue I just want to show you two funky images of Link that really 225 made me laugh: 226 227 Funky looking Links generated by Midjourney 228 229 Midjourney please staph! 230 231 Text[34] # 232 233 With the drawings ready, I turned to the next crucial part - the text. I first 234 wanted to write everything by hand, photograph it and then vectorize it in the 235 same way I did with the images. But it was a hassle - I had to do a lot of 236 editing for text to look as my handwriting. 237 238 Evil Mad Scientist, the maker of my pen plotter, has a fantastic tool called 239 [35]Hershey Text. It contains a bunch of single-line fonts ideal for plotting. 240 I chose the EMS Elfin font as it looked playful and hand-drawn. I used it to 241 write all of the text in the book and I think it turned out great. 242 243 Here is how it looks: 244 245 Title of the book in English and Aerbian in EMS Elfin font 246 247 Plotting[36] # 248 249 The tricky part with bookbinding is that pages are not printed in order, but in 250 a way that when you fold the sheets in half, you get the right order. I used 251 Figma to design the layout, with a great care to make sure pages are in order 252 after double-sided plotting. 253 254 Here is the layout laid out on A4 sized paper. Sorry for blurring the text, but 255 a lot of it is very personal and I want to keep it for our eyes only. 256 257 Layout of the book ready for plotting 258 259 Plotting is the part that went the smoothest, but not without hiccups. I 260 usually use Pigma Micron blackliner markers. They use archival quality ink and 261 they are literally indestructible. But this time, even the thinnest one I had 262 was too thick for the book this small. 263 264 Here you can see the first two test plots (Sorry for the poor quality photos, I 265 threw the plots away, so these are the only ones I have) using markers of 0.2mm 266 and 0.1mm thickness respectively. Lines got a bit smudged and looked much 267 thicker than I expected. This was also the moment I realized I need to remove a 268 lot of details (A friend of mine said that in these plots, Link looks like he 269 has measles) from the images to make them readable at this size. 270 271 Test plot using 0.2mm marker Test plot using 0.1mm marker 272 273 I needed to find a thinner pen. 274 275 Technical pen to the rescue[37] # 276 277 Blackliner markers were made as a more practical replacement for technical 278 pens. But from what I've read, an old-school technical pen was the only thing 279 capable of achieving super-fine lines I wanted. I went online and ordered 280 Rotring Isograph 0.2mm. As soon as it arrived I sneaked out to my study and did 281 another test plot using it. Oh boy, was I happy when I saw the result: 282 283 Test plot using a technical pen 284 285 Lines were thin and crisp and at this point I was convinced the project will be 286 a success! 287 288 Smudged drawings[38] # 289 290 All of the first plots were done on 120gsm printer paper. It is somewhat thick 291 paper and drawings looked fantastic. Unfortunately, when I bound the pages 292 together, the drawings and letters would get transferred on the opposite pages. 293 I could probably get away with it, considering the whole hand made feel of the 294 book. But I wanted it to be perfect. 295 296 A friend advised me to leave ink to dry for a few hours. I left each side to 297 dry for 24 hours, but it smudged again. Next time I tried putting the plot 298 (before cutting the pages) between two sheets of papers and pressing it with 299 heavy books. I did that for more than 24 hours, but still after cutting and 300 bounding the pages, they got smudged again. At this point I was becoming 301 somewhat desperate. As the last resort I ordered different, 100gsm paper and to 302 my relief it worked! Crisis averted! 303 304 In the final version you can still see tiny traces on a few pages, but these 305 are barely visible and don't really bother me. 306 307 After plotting and cutting I was left with a stack of somewhat delicate pages. 308 Now, it was finally time to turn them into a book. 309 310 Bookbinding[39] # 311 312 As you can imagine, I had zero bookbinding experience. There are a lot of 313 resources online, but two of them were crucial for my project as they were on 314 how to bind tiny books: 315 316 • [40]Mini BookBinding Marathon video 317 • [41]How to Make A Miniature Hardback Book article 318 319 After reading and watching these and a few generic articles on bookbinding, I 320 gathered enough info to try doing it myself. I thought I was super clever 321 because I 3D printed sides and spine of the book. I designed sewing holes in 322 the spine so I can connect the pages directly to it without using glue. It was 323 a decent idea, but it left a gap between two signatures (In bookbinding, a 324 section, gathering, or signature is a group of sheets folded in half.) . Still, 325 I went with it for the first try. 326 327 3D printed spine with two book signatures already sewn to it 328 329 I laid everything down on the canvas that the book would be wrapped in and 330 started assembling it. But I made a crucial mistake - I used super glue. It 331 dries quickly, it is stiff, and doesn't glue 3D printed plastic well and it 332 dissolved the paper I used. Long story short, I made a mess. But I didn't 333 stress too much, I just proclaimed that version is a prototype and used it as a 334 learning experience. 335 336 I ordered proper bookbinding glue (PVA). While I was waiting for it, I focused 337 on properly sewing the pages together. 338 339 Sewing the pages[42] # 340 341 The first time I sewed the pages together, I poked the holes by hand and they 342 were somewhat uneven. Again, it was nothing major, but I didn't like it. So I 343 designed and 3D printed a simple tool to help me drill the holes evenly. 344 345 The tool has two parts, and the pages fit snugly between them. Both top and 346 bottom parts have holes, so I was able to put the needle through and poke 347 perfectly even holes in the pages. I'm very proud of this silly contraption. 348 349 3D printed tool, closed, with needle poking through it 350 351 3D printed tool, opened, with the sheet with sewing holes visible still in it 352 353 Here you can see all of the eight sheets with sewing holes. 354 355 All eight sheets with illustrations ready for sewing 356 357 Fun fact, I designed all 3D parts using JavaScript and [43]Replicad library. 358 Here is [44]a link if you want to play with the model in your browser. 359 360 [45]Application showing code and the 3D model 361 362 But I ditched the 3D printed spine and used the technique called pamphlet 363 stitch, which works great when you have only two signatures. It made signatures 364 way more tight than when I connected them separately to the 3D printed spine. 365 366 Two book signatures sewn together using pamphlet stich 367 368 Two book signatures opened at the exact point where they meet 369 370 Glue arrived[46] # 371 372 When the glue arrived, I plotted everything again and took it from the top. I 373 swapped 3D printed sides for cardboard. Using proper glue was a game changer. I 374 had enough time to apply it before it hardened, and when it dried it stayed 375 flexible. And when it got onto my fingers, it was easy to remove. Everything 376 was much cleaner, and I finally managed to put it all together. 377 378 Unfortunately, I was rushing to finish the book, so I didn't take any photos of 379 the process. But here are a few I do have: 380 381 Cardboard sides laid out in the bookbinding canvas 382 383 If you are an experienced bookbinder and reading this, I'm sorry for the 384 bookbinding crimes I probably committed. I promise I won't use super glue 385 again. 386 387 The finished book[47] # 388 389 It looked great! It was not perfect (more on that below), but I was super happy 390 with how it turned out. It had a distinct handcrafted feel to it, the images 391 turned out fantastic, and I think I really managed to bring out a personal 392 touch with it. 393 394 On the day I finished the book and gave it to my wife, we were both exhausted 395 (our kid was teething, and we had a very rough night), so I thought she would 396 appreciate a little pick-me-up. 397 398 Book opened on the table showing the illustration of the family walking in the 399 forrest 400 401 When I gave it to her, the first thing she asked was, "Will I cry?". She was 402 brave, but it definitely got her all mushy and made her day. After reading, she 403 carefully put it on the shelf, out of the reach of the little one. 404 405 Then I asked her if she ever suspected I was preparing a surprise for her, and 406 she said that she had no idea. But she also said that she thought it was weird 407 that I would often plot something and not brag about it to her afterwards. It 408 was true, I love showing her my work, but luckily she didn't give it too much 409 thought, and I was able to finish my secret project. 410 411 Book opened on the table showing the illustration of Link from The Legend of 412 Zelda 413 414 One thing I would like to fix[48] # 415 416 Like I mentioned, the book isn't perfect. The sides are a bit too large, so the 417 pages seem too deep inside when the book is closed. For the same reason, the 418 end pages turned out to be a bit short, which gives it a weird, uneven look. It 419 is purely aesthetic, but I think it is the only thing keeping it from being 420 perfect. 421 422 Lesson learned if I ever end up doing something similar. 423 424 Timeline[49] # 425 426 It took way longer than it should have—it took me a month and a half to finish 427 it. It took so long because I did it in secrecy, which meant working late in 428 the evenings when my wife and kid were asleep. A bunch of little failures... 429 ehm, I mean learning opportunities also prolonged the project. And finally, I 430 had to order multiple things, so I was blocked a few times while I was waiting 431 for four different deliveries. 432 433 But the final assembly took me around two and a half hours from start to finish 434 - plotting, cutting, sewing, and bookbinding. Mostly because I had already 435 practiced all of them and defined the exact process. 436 437 Conclusion[50] # 438 439 It was so much fun. I love projects that span across multiple disciplines. This 440 one touched AI, drawing, plotting, modeling, 3D printing, sewing, and 441 bookbinding. I encountered a lot of little hiccups, but I also learned about 442 all of them. Some of the errors I made could have been avoided if I had been 443 more patient. But I hope you'll cut me some slack - I was super excited and 444 eager to see how it would turn out, and I had limited time windows when I could 445 do it in secrecy. Still, I need to take it as a lesson - being patient will 446 help me save time when doing projects like this one. 447 448 The highlight for me was that I could do it without an illustrator. Love it or 449 hate it, AI ended up being a fantastic tool that filled the gap in my skill 450 set, which was crucial for making the book. 451 452 I hope you enjoyed this write-up as much as I enjoyed making the book and 453 writing the post. And I do hope I inspired you to try making something of your 454 own. If I did, please reach out on GitHub, I would love to see it. 455 456 Share on: 457 [51] [52] [53] [54] 458 459 Related Posts 460 461 [55] 462 Letters from Sarajevo 463 26. March 2020 464 [56] 465 Bunny jumps again 466 23. February 2025 467 [57] 468 Custom giraffe caret 469 20. June 2023 470 [58] RSS Feed 471 [59] 472 473 © 2016-2025. All rights reserved. 474 475 Written with ♡ by Stanko Tadić. 476 [60]Home/[61] Art /[62] Blog /[63] Projects /[64] About /[65] Stats /Search 477 478 Menu and search 479 480 [67] 481 Search[69][ ] 482 [70] Art [71] Blog [72] Projects [73] About [74] Stats [75] RSS Feed [76] 483 GitHub 484 485 References: 486 487 [1] https://muffinman.io/blog/the-tiny-book-of-great-joys/#content 488 [2] https://muffinman.io/ 489 [4] https://muffinman.io/art/ 490 [5] https://muffinman.io/blog/ 491 [6] https://muffinman.io/projects/ 492 [7] https://muffinman.io/about/ 493 [8] https://muffinman.io/stats/ 494 [12] https://muffinman.io/archive/#random 495 [13] https://muffinman.io/img/tiny-book/the-book-02.jpg 496 [14] https://muffinman.io/img/tiny-book/the-book-03.jpg 497 [15] https://muffinman.io/img/tiny-book/the-book-04.jpg 498 [16] https://muffinman.io/blog/the-tiny-book-of-great-joys/#the-idea 499 [17] https://muffinman.io/blog/the-tiny-book-of-great-joys/#drawings 500 [18] https://muffinman.io/blog/the-tiny-book-of-great-joys/#text 501 [19] https://muffinman.io/blog/the-tiny-book-of-great-joys/#plotting 502 [20] https://muffinman.io/blog/the-tiny-book-of-great-joys/#bookbinding 503 [21] https://muffinman.io/blog/the-tiny-book-of-great-joys/#the-finished-book 504 [22] https://muffinman.io/blog/the-tiny-book-of-great-joys/#timeline 505 [23] https://muffinman.io/blog/the-tiny-book-of-great-joys/#conclusion 506 [24] https://muffinman.io/blog/the-tiny-book-of-great-joys/#the-idea 507 [25] https://muffinman.io/blog/the-tiny-book-of-great-joys/#drawings 508 [26] https://muffinman.io/blog/the-tiny-book-of-great-joys/#midjourney 509 [27] https://muffinman.io/blog/the-tiny-book-of-great-joys/#prompting 510 [28] https://muffinman.io/blog/the-tiny-book-of-great-joys/#ai-to-plotter 511 [29] https://www.instagram.com/p/CNJ_ZBOHZKj/ 512 [30] https://muffinman.io/blog/the-tiny-book-of-great-joys/#what-makes-centerline-tracing-different 513 [31] https://muffinman.io/blog/the-tiny-book-of-great-joys/#cleaning-up 514 [32] https://muffinman.io/blog/the-tiny-book-of-great-joys/#final-image-flow 515 [33] https://muffinman.io/blog/the-tiny-book-of-great-joys/#never-stood-a-chance 516 [34] https://muffinman.io/blog/the-tiny-book-of-great-joys/#text 517 [35] https://wiki.evilmadscientist.com/Hershey_Text 518 [36] https://muffinman.io/blog/the-tiny-book-of-great-joys/#plotting 519 [37] https://muffinman.io/blog/the-tiny-book-of-great-joys/#technical-pen-to-the-rescue 520 [38] https://muffinman.io/blog/the-tiny-book-of-great-joys/#smudged-drawings 521 [39] https://muffinman.io/blog/the-tiny-book-of-great-joys/#bookbinding 522 [40] https://www.youtube.com/watch?v=kA2bjvOAzGw 523 [41] https://www.rokolee.com/diy-miniature-hardback-book 524 [42] https://muffinman.io/blog/the-tiny-book-of-great-joys/#sewing-the-pages 525 [43] https://replicad.xyz/ 526 [44] https://studio.replicad.xyz/workbench?from-url=https://muffinman.io/img/tiny-book/model.js 527 [45] https://studio.replicad.xyz/workbench?from-url=https://muffinman.io/img/tiny-book/model.js 528 [46] https://muffinman.io/blog/the-tiny-book-of-great-joys/#glue-arrived 529 [47] https://muffinman.io/blog/the-tiny-book-of-great-joys/#the-finished-book 530 [48] https://muffinman.io/blog/the-tiny-book-of-great-joys/#one-thing-i-would-like-to-fix 531 [49] https://muffinman.io/blog/the-tiny-book-of-great-joys/#timeline 532 [50] https://muffinman.io/blog/the-tiny-book-of-great-joys/#conclusion 533 [51] http://news.ycombinator.com/submitlink?u=https%3A//muffinman.io/blog/the-tiny-book-of-great-joys/&t=The%20Tiny%20Book%20%20of%20Great%20Joys 534 [52] http://twitter.com/share?text=The%20Tiny%20Book%20%20of%20Great%20Joys&url=https%3A//muffinman.io/blog/the-tiny-book-of-great-joys/ 535 [53] https://bsky.app/intent/compose?text=The%20Tiny%20Book%20%20of%20Great%20Joys%20https%3A//muffinman.io/blog/the-tiny-book-of-great-joys/ 536 [54] http://www.reddit.com/submit?url=https%3A//muffinman.io/blog/the-tiny-book-of-great-joys/&title=The%20Tiny%20Book%20%20of%20Great%20Joys 537 [55] https://muffinman.io/blog/letters-from-sarajevo/ 538 [56] https://muffinman.io/blog/bunny-jumps-again/ 539 [57] https://muffinman.io/blog/custom-giraffe-caret/ 540 [58] https://muffinman.io/atom.xml 541 [59] https://muffinman.io/ 542 [60] https://muffinman.io/ 543 [61] https://muffinman.io/art/ 544 [62] https://muffinman.io/blog/ 545 [63] https://muffinman.io/projects/ 546 [64] https://muffinman.io/about/ 547 [65] https://muffinman.io/stats/ 548 [67] https://muffinman.io/ 549 [70] https://muffinman.io/art/ 550 [71] https://muffinman.io/blog/ 551 [72] https://muffinman.io/projects/ 552 [73] https://muffinman.io/about/ 553 [74] https://muffinman.io/stats/ 554 [75] https://muffinman.io/atom.xml 555 [76] https://github.com/stanko/