top | item 46944365

Show HN: Printable Classics – Free printable classic books for hobby bookbinders

85 points| bookman10 | 22 days ago |printableclassics.com

I created a site (https://printableclassics.com) that allows you to download classic books and customize things like the font size, page size, and the cover.

As part of this, I wrote a software pipeline that takes epubs, html files, or pdfs and converts them into formatted books with custom covers, page numbers, chapter formatting, etc.

I used an LLM for categorizing the books. There's a nice way to filter such that you could easily find "Young Adult, Ancient, Fantasy" for example.

When downloading from the site, the PDFS are rendered in a work queue. Hopefully the server I'm using won't get overwhelmed. It takes around 10-15 seconds to generate for most books.

Most of the books currently on the site are from Standard Ebooks. I plan to add more books from Archive.org and Project Gutenberg over time.

I also created a little guide on how you can print and bind books at home with around $200 in equipment. (https://printableclassics.com/print-guide)

Printable versions of the Harvard Classics are available here: https://printableclassics.com/harvard_classics This is an example of direct PDF conversion.

Hopefully this is useful to some people. I plan to use the books here for home education myself so it will at least be useful to me. I'd like to add a guide with top suggestions by age level and some educational theory on how I made the selections. I'm happy to take any feedback on the site or answer any questions.

There is also the option to have the books professionally printed through a print on demand provider. I'm hoping that could be a way to pay for the site hosting.

Thanks for checking it out!

32 comments

order

reedlaw|21 days ago

This is a fine and useful project, but my experience with newly printed classics is the quality is inferior for a number of reasons. Besides paper and binding, typesetting is something that older editions rarely messed up, but some new editions create a facsimile by scanning all the pages and then re-printing. That means that instead of getting the crisply defined letters of an old printing press, you get fuzzy letters and scan artifacts. This (https://printableclassics.com/harvard_classics) shows what I mean. Not only is the typesetting quality worse, but the price is much higher for the new edition. I don't have a problem with the price on Printable Classics ($885 for a new 50 volume set is reasonable), but you could often find the same thing cheaper used. A used set is $300-$600 on ebay. The value of these PDFs is that you could make a higher quality edition as long as the text is OCR'ed and properly typeset (which is true of the Moby Dick version on the site). For the scanned copies, it would be a big undertaking to re-typeset, but I'm sure LLMs could help.

rahimnathwani|21 days ago

I wonder how good a job the ClearScan feature on Adobe Acrobat would do. IIRC it creates one or more fonts based the existing characters in the PDF. So each lowercase 'a' would look the same, and be a sort of average of all the 'a' letters in the book.

bookman10|21 days ago

I agree. I wish I had the time to retypeset those. I would be concerned though with mildew/mold on old, used versions though.

staplung|21 days ago

Very cool, thanks for putting this up.

Couple of observations:

- the page size drop down doesn't display any units (e.g. "6 x 9"). I assume there're all in inches but it would be a little more helpful if it said so and/or included a common name (e.g. US Letter) if one exists for that size.

- you might want to look into page imposition[1] something that's basically essential for any kind of stitched binding (as opposed to "perfect binding"). Full-blown imposition software is often ridiculously expensive and can have quite a few options so it's definitely both an engineering and UI challenge. In the meantime, Bookbinder JS[2] is a great site that I think runs entirely client side and can transform any PDF.

1: https://en.wikipedia.org/wiki/Imposition

2: https://momijizukamori.github.io/bookbinder-js/?paperSize=LE...

cbondurant|21 days ago

If imposition was something for this site to add, I'd recommend doing it through LaTeX with the pdfpages package[1]. You generate the pdf normally, then re-lay it out using a second latex file dedicated to just doing the imposition. It's how I've done all of my imposition so far, and its more than powerful enough to do the kind of simple page layout that you would want to do with a home printer.

Maybe more complex layout might be needed if you happened to have a printer that could handle like, A0 size paper, or continuous rolls, which would give more flexibility in terms of the number of ways you could fit your pages onto the stock material. for the hobbyist though? More than good enough.

1: https://ctan.org/pkg/pdfpages?lang=en

bookman10|21 days ago

Thanks, I hadn't seen bookbinder.js, that looks really neat. I'll remember that if I get back into sewn binding.

I personally like to use standard A4/letter size paper and print one page per side and do perfect binding. Printing two A5 pages on A4 was my original approach, but then the grain direction is wrong for standard computer paper and the pages come out too stiff.

I think the quality is good enough for me, but I definitely understand the appeal of sewn binding.

gibspaulding|21 days ago

I’ll be curious to go through your tutorial later as book binding is something I’d like to learn. I was really excited recently when I was able to get Claude Code to write me a python script to generate a custom weekly planner since I haven’t found a commercially available one laid out like I’d like. Unfortunately I haven’t found anywhere that can print something pocket sized for me, so for it to be actually useful, I’m going to have to print and bind it myself.

bookman10|21 days ago

I had a good experience using Lulu for print on demand books. You can order just quantity one if you want to go that route.

storystarling|21 days ago

Nice work! We create personalized children's books - parents share their idea and photos, and AI brings their custom story to life with their child as the protagonist. We do hybrid fulfillment depending on the country. The PDF formatting challenges you mentioned are very real!

robcohen|21 days ago

Interesting. I like the idea of reprinting classics to all look identical as a way of designing a library. Would be interesting to select a set of books for your kid, have them printed, and just put them in their room. I wonder if any startups are doing this.

m-hodges|21 days ago

I recently got into watching YouTube bookbinding as a way to fall asleep at night. Then I found a local book and stationary studio for hobbyists to learn as a community. It’s not something I have time for right now, but it’s the kind of hobby I’d love to try one day.

bookman10|21 days ago

It's a really neat hobby. It's great for gifts, especially if you take the high quality artistic approach. I like to do simple "perfect binding" because it saves money (materials are probably around a penny per page), gets me the book faster than buying it, and makes all my books consistent in font, size, and cover style.

SubmarineClub|21 days ago

Any YT channel recommendations?

soupymcsoup|21 days ago

This is very cool. I've played around with bookbinding years ago and this site might just bring me back.

bookman10|21 days ago

Thanks, I'll definitely feel proud if I see someone else actually make one of these books.

oneseven|21 days ago

> Note this page includes affiliate links. [Amazon will earn less money if you use these links]

Ha ha. I never thought of that as a selling point for affiliate links. I suppose Amazon will make less money if people print their own books as well.

xtiansimon|20 days ago

Affiliate link usage says something about the intended audience I think, which is interesting.

poulpy123|21 days ago

Nice work ! I started to look into bookbinding a few months ago. Is your pipeline open source ?

bookman10|21 days ago

Not yet and it's a little messy now to be honest.

The pipeline itself is in node.js and uses mostly pdf-lib (https://pdf-lib.js.org/) and ebook-convert (https://manual.calibre-ebook.com/generated/en/ebook-convert....)

For epubs, I split the book into chapters and run ebook-convert on each chapter individually, adding an extra page if needed to make the number of pages even. Then I combine all the chapters and do a custom scheme for numbering (because you don't want numbers on blank pages, you want the numbering to start at chapter 1, etc)

For html books from Project Gutenberg for example, I make sure they have text in <p> and chapters in <h2>. Then do a similar logic with ebook-convert.

For pdf books, I just use pdf-lib to draw the pages directly.

I also shift odd pages to the right and even pages to the left so there is a larger inner margin than outer margin.

If you're looking to do custom books, I would just use ebook-convert by itself, it just won't be quite as pretty though because it lacks those improvements.