/* FreeType doesn't do any filtering for grayscale rendering. Instead, it produces *exact* coverage values per pixel with 256 levels. In general this gives better results than filtering, for example, if you have to render long lines with a small slope. */ That is pretty much what a box filter is (to take the area in each square). But to implement that exactly would be severe overkill. If the glyph is very complex, with many intersections with pixel edges and corners, the method would spend a lot of time finding the exact value of the intersections then taking the exact integral value of the entire square and take 8 fractional bits of it. This is a processing waste, it also makes it much more complicated to implement dropout control (in anti-aliasing it's supposed to have a more subtle effect functioning on individual samples) and you would have to completely rewire the method to disable vertical anti-aliasing as in the gasp flag. It makes FreeType impossible to run with anti-aliasing on embedded platforms. I am marking adding 4*4 oversampling as a high priority now because FreeType deserves to have anti-aliasing (obviously with correct gamma, and only when the font enables anti-aliasing) even on embedded platforms that could run 4*4 oversampling but certainly not the integral overkill monstrosity.