Why choose PDF?
EPUBs are great for reading on mobile devices, however PDFs have the advantage for serious reading, especially on large screens like tablets and desktops. Unlike EPUBs, PDFs allow for annotations, and precise references through page links (for example, PDFoo URLs) and bookmark outlines (PDFOutliner). I like to fast read technical manuals in PDFSpeech, which makes it easier to consume "boring" parts using text-to-speech technology. To convert an EPUB to PDF, we will use Calibre, the free and excellent e-book management app.
Calibre for Converting EPUB to PDF
Import the EPUB into Calibre by dropping it onto the window. For this example, I'm using the OmniGraffle 7 Reference Guide. Note that on the right sidebar, below the book cover, is a link "Click to open" that will reveal the folder where the e-book is saved on disk. We will need to access this folder directly in the last step.
Right click on the book row, and select Convert books → Convert individually, from the contextual menu. In the dialog that opens, select PDF in the top-right. Then select "Page setup" in the left sidebar, and ensure that the Output profile on top is set to Tablet. This ensures that images in the EPUB (often included by the publisher at very high resolutions) are not unnecessarily downgraded when printed to PDF.
Tweak the PDF page size for PDFSpeech
In the same Convert dialog, select the PDF output tab in the left sidebar. Check the option for "Preserve aspect ratio of cover". The default page size is specified here (Letter by default) though you can specify a custom page size too.
You will usually want to experiment with page sizes for the generated PDF. You can run the EPUB to PDF conversion multiple times in Calibre if you wish, and Calibre will replace the generated PDF. For this EPUB, I chose a size of 13 x 26 inch to balance the relative size of text and images on the page. I like to have sufficient content on each page of a PDF so that when PDFSpeech highlights and reads text, I can see it in the context of headings & images around the text.
Make the PDF Compatible with macOS Tools
The PDF generated by Calibre is however not fully compatible with Preview and other tools based on the macOS PDF engine. You can view the PDF but you cannot select the text within. Two workarounds: open the PDF in Preview, then Export as PDF... to generate a compatible PDF. The other option is to use ghostscript utility from the command-line, in Terminal app, for which you'll work in the book's directory on disk.
PDFSpeech can be configured as a target to receive PDFs that are printed from any app on macOS. When we print as PDF, we don't usually pause to consider what the print output should look like. The below figure shows a web page being printed from Safari. The default view will require 21 pages in the PDF. By switching to Reader mode in Safari, we get a cleaner view of the web page will extraneous elements removed, and the page count is reduced to 19 pages. However, in the last example, the page size has been reduced to 4 pages by specifying a custom page size, in this case a page size of 12 inch x 80 inch (width x height.) Since we don't intend to print these PDFs on actual paper, using such virtual paper sizes is entirely driven by whether or not the PDF looks good & functions great in the PDF reading apps we use.
Benefits of Long Pages: PDFSpeech highlights sentences as it reads them, and long pages allow the highlighting to proceed smoothly down the page. The default page sizes such as Letter and A4 when used for printing to PDF can often lead to text content separated from the figures due to page breaks. Overall, readability is significantly improved by using long pages.
Indeed, I use three custom page sizes for printing PDFs into PDFSpeech, depending on how much content is to be printed on a page since long pages will have lots of whitespace if the content is insufficient:
Custom Paper Sizes can be selected in the Paper Size dropdown in the Print dialog. And in this dropdown, you can also create new custom paper sizes. In this example, looking at the page preview on the left, the content can likely be fit on the Half Large page preset. In this way, you can choose a paper size for the content that both looks neat & works great in the PDFSpeech app.
PDFSpeech provides an autopilot mode to help you read anything. It adds momentum to the static page, and engages both your eyes & ears to advance you gently through the content, at a steady pace. You can start anywhere in the document, and stop at any time. PDFSpeech makes it easy to speed up to browse documents, and easy to slow down to study. You control the speed, and you can simply have it read again whatever requires a second attempt for better understanding.
I’ve personally had a lot of success with text-to-speech (TTS), even for reading dense textbooks! Recently, I read the book “Data Science for Business” of around 400 pages, on the Safari Books Online library. At that time, PDFSpeech didn’t exist, and I had to incrementally select text on the web page, then hit a keyboard shortcut for the “speak selected text” command built into macOS. The tedium was reduced a lot by using PopClip, which allowed me to select text with the mouse, and then immediately click the “say” command in a convenient popover placed right under the mouse. I was genuinely surprised by the ease with which I was able to “read” a textbook for long stretches of time, marching steadily through the book. The fact that text-to-speech technology significantly cut the effort & willpower required to read a textbook from cover to cover is absolutely amazing. That’s where the idea of PDFSpeech was born - with the objective of reducing even further the friction involved in reading a book using TTS technology.
PDFSpeech is an OS X application that leverages text-to-speech technology to help you tame your reading list.