joeycastillo / The-Open-Book

Creative Commons Attribution Share Alike 4.0 International
7.45k stars 232 forks source link

Anti-aliased Text #35

Closed weiweihuanghuang closed 1 year ago

weiweihuanghuang commented 4 years ago

It looks like the display does support greyscale, but currently the text is rendered with hard edges. Any plans to introduce anti-aliased text rendering?

joeycastillo commented 4 years ago

Any plans to introduce anti-aliased text rendering?

Not at this time. The font that the Open Book uses to support world languages, GNU Unifont, is a 1-bit bitmap font, so for the core use case 1-bit mode is sufficient. In addition, the grayscale mode takes slightly longer to display; I haven't done tests of the reading experience using grayscale mode, but my instinct is that I want the fastest possible page turning experience, which the 1-bit mode delivers.

Having said that, there's nothing stopping you from writing code that does antialiased font rendering; I'm just not imagining that as part of the software I plan to develop for it.

One last thing to note is that the grayscale mode and the faster 1-bit modes are exclusive; you can't, say, display a grayscale page, and then do a fast partial update of a smaller area. Doing this will kind of "snap" the grays to either a black value or a white value. This all leads me to want to treat grayscale mode as a mode specifically for displaying full-screen images or diagrams, while sticking to 1-bit modes for menus, user interfaces and the core reading experience.