The Android robot is reproduced or modified from work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.

If you're anything like me, you are very particular about your reading devices. One of the big improvements moving from the older generations of the Kindle to the Paperwhite was the ability to add new fonts to the device quite easily, enabling you to pick the perfect font for whatever book you happened to be reading. Prior to that, you had to jailbreak the device.

However, despite its fantastic handling of ebooks, the Paperwhite doesn't handle PDFs very well, and I'm needing to read and annotate PDFs on the go more and more these days because that's the format in which I prefer to read journal articles. Not wanting to open up my laptop just to read a PDF, I bought a Nexus 7. (Unfortunately, most PDF markup apps are terrible, so I'm still in a bit of a pickle. Foxit crashes; Skitch allows only freehand highlighting; QuickOffice doesn't allow any PDF markup; and Adobe Reader, I hate to say, comes out on top, although it's far from ideal. Suggestions are welcome.)

But this left me with yet another predicament, as I would now be carrying around four devices regularly: an e-reader, a smartphone, a tablet, and a laptop. That seemed, well, superfluous, and as hard as it was to make the final call—because I really like the device—I have decided to essentially retire the Paperwhite and get used to reading books on my tablet. The transition was not as hard as I'd imagined. Reading on a tablet screen is in fact very nice. At this point, I can't say I miss e-ink all that much.

The Kindle app is a vexing beast, though. It's fairly nice at first sniff, but it doesn't allow the reader to share quotes to social networks the way the Paperwhite does. Perhaps more annoying yet is the inability to change or add fonts; the app uses the system default serif and sans-serif. That's it. On my Nexus these defaults are DroidSerif and DroidSans, respectively. Both are fine, but when I read books, I like fonts that are used as typefaces in print, despite having overcome almost entirely my nostalgia for the page, with a few exceptions. (I read A Song of Ice and Fire in hardcopy, for instance.)

So I found an article from Android Authority and, using the method outlined in the section titled "Manual method using file manager app," located near the end of the piece, I changed the default system serif. (Note: Swapping in these new font files will affect any app or browser that relies on them. The font I've selected is now used selectively in Chrome and the Goodreads app, among others, and this is just fine by me. In fact, it's made reading articles in Chrome slightly more palatable.) Unrooted options are available to you, but for reference, my Nexus is rooted, running Cyanogenmod 10.2.

For best results in the Kindle app, you'll want to find True Type Fonts (TTF) with the following four variants available: Regular, Italic, Bold, BoldItalic. Those should cover any formatting you're likely to find in a Kindle ebook. Personally, I recommend Latin Modern Roman, available at Font Squirrel for free. This font is actually provided in OTF format, but you can Google "OTF to TTF converter" and find a free conversion option you're comfortable with. Then you'll be able to collect the TTF files you need in one place and transfer them to your device however you'd like. (I just uploaded them to Google Drive.)

I first fell in love with Latin Modern Roman when I started using LaTeX to create PDFs. It provides a positively book-like experience, which is to say it's very easy to read, even more so than DroidSerif, itself a decent font all things considered. Sorts Mill Goudy and Baskerville are two other good options, but not all of the variants I listed are available for free.

The only downsides to using the method I did are that you'll need 1) to be careful to backup the originals and 2) to rename and transfer TTFs any time you feel like changing the font. Personally, I didn't like the font changer I tried, preferring to just download and transfer the necessary files directly, as described.

Here's a screenshot of my Kindle app using Latin Modern Roman.

The Kindle app for Android using Latin Modern Roman as the default serif

The Kindle app for Android, with Latin Modern Roman set as the default serif. Click to view full-size version.

Pretty nice, eh? Now I can get back to allowing incessant Facebook notifications interrupt my reading.

Update (02.12.2014): I only realized after flashing a new CM version, that you'll need to repeat this process every time you update. As such, I now keep the Latin Modern Roman TTF files socked away on my SD card for quick transfer in the future.

Image: The Android robot is reproduced or modified from work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.