PLEX86  x86- Virtual Machine (VM) Program
 CVS  |  Mailing List  |  Download  |  Newsgroups

Comic Sans was An alternative history... 4293


Your Ad Here

Your Ad Here

Peter Flbutt

No, hinting fixes an entirely different problem. An outline is a continuous function. That is, it is a smooth curve on a plane with real axes. A rendering space (a computer monitor, a laser printer drum, a filmsetter output screen) consists of discrete rectangles (picture elements, or pixels) that are either binary (white-black) or, in the case of a monitor, capable of emitting different levels of light.

When the continuous curve is drawn across this discrete space, the curve may subtend a given pixel, in which case it is black; the curve may miss a given pixel, in which case it is white; or it may cross the pixel somewhere, in which case what you would LIKE to see is part of the pixel white and part of it black. But pixels don't work that way.

So the rasterization engine (the program that translates the curve into pixels) has to make choices, depending on the output device. Because of the way the human eye works (as opposed, say, to a bald eagle's eye or a fly's eye), if the number of pixels per inch is roughly 300 or higher, the engine can get away with a fairly simple rule: if the curve subtends more than 50% of the pixel, turn it on. If it subtends less than 50%, turn it off. At 300 dpi, viewed from normal reading distances, this is accceptable (not good, just acceptable). At 2540 dpi, it's beyond the threshold of human perception and it looks great. (Note: If you convert font curves to EPS shapes, the rule changes. If the curve touches any part of the pixel, it gets turned on. The type looks a little fatter.)

Comic Sans was An alternative history... 4294
It isn't only dpi that's relevant, it's ppm. On a 1000 dpi output device, text printed at small sizes will still render at a low enough ppm where hinting can make a noticeable...

On a monitor, though, with, generally, 120 pixels per inch or fewer, at normal text sizes, problems arise, because our eyes can pick out differences at that resolution. As you move across a line--suppose you just set aaaaaaaaaaaaaaaaaaaaaaa, for example--each glyph may start at a different spot relative to the corner of the first pixel it touches. So the adjacent a's would not look identical.

Two technologies are used to address this problem. One is called anti-aliasing. Instead of making a pixel black or white, the engine asks what percentage of the pixel is subtended by the curve and it uses that number to pick a gray level for the pixel. This smooths the appearance as the eye averages the pixels over the visual field.

The other is font hinting. This consists of explicit instructions from the designer to the rasterization engine for maintaining a consistent appearance of stem widths and curve pitches (think of Optima, for example), as the text marches across and down the screen, encountering pixels differently in each instance. Font hinting applies only to on-screen display and, as a practical matter, only at relatively small sizes.

privates Margulis

Comic Sans was An alternative history... 4296
Sir Ray, It really gets down to whether there is a flaw in the concept somewhere. All I really did was holler about...



Your Ad Here

List | Previous | Next

Comic Sans was An alternative history... 4294

Alt Folklore Computers from Newsgroups

The #1 Usenet Provider on the Internet

Comic Sans was An alternative history... 4292