Chris, Thanks for that information. More below... On Saturday 29 January 2005 18:25, Chris Carlen wrote:
Paul W. Abrahams wrote:
I've noticed that the intercharacter spacing of OpenOffice documents is not calculated correctly for the on-screen display, even though it is OK in the printed documents. A specific case in point is the display of Times New Roman. Antialiasing appears to be on, since when I temporarily turned it off the characters themselves looked pretty bad. The font help at OpenOffice.org has nothing that I can find on this issue. Any suggestions?
Paul
Few people know about the real cause of this or its fix. The cause is as follows:
The freetype library is what renders truetype fonts. For patent reasons, Suse cannot ship this library compiled with the "bytecode interpreter" turned on. This is what is necessary to properly render the fonts using a technique known as hinting.
Font hinting for low (72-96) and medium (300-600) resolution display devices is absolutely critical to getting good font rendering. It's far from an esoteric optimization whose effects are discernable only to font designers and graphic artists. It's critical for making text display readable without eyestrain. Shall we intone about the onerous consequences of software patents?
To work around this, the smart folks at the freetype project designed an "autohinter" which attempts to give the same quality of results at the real bytecode interpreter, but without using the bytecodes which are the hinting clues in the font which are what enable the rendering code to arrange the pixels on a grid so that the font looks symmetrical and "nice". Without hinting, the font looks "klunky" or "rough."
The fact is, the autohinter just cannot look as good as the real bytecode interpreter. That is why Suse sets up OOo with antialiasing turned on. The blurring of the fonts hides the fact that the hinting is not done very well. When you turn off antialiasing, you see the problem. This is a serious problem for folks who use flat panels, and who don't like the blurred fonts.
Thank god there are so many of us who really like blurry font rendering...
Interestingly, if the bytecode interpreter is enabled, and antialiasing is still used, together with subpixel hinting, then the results are simply stunning. The resulting display looks truly professional.
I am one of the demanding few who thinks that if Linux distributers cannot find a solution to this problem and get that bytecode interpreter turned on by default, then professionals like myself who don't have philosophical but only practical motivations to use Linux, will simply find it unacceptable.
It's not really about being demanding. All the subtlety of font design is not about some kind of frivolity and / or "art" (though font design is surely an art), but in fact about the practical aspects of the human visual system. It's really quite fascinating and there are many counter-intuitive facts about how human perception relates to text rendering, and this knowledge goes back hundreds of year, and is quite independent of computer or non-paper display technologies.
The fact is, without antialiasing, the font display sucks. It even sucks with antialiasing, once you have seen what it looks like with the bytecode interpreter. This affects all of KDE and other GUI apps which use TTF fonts, not just OOo.
The real consequence of poor font rendering is usually eye strain and / or difficulty in reading. To be sure, good font design (producing both attractive and readable fonts) is not easy. Low resolution display (anything less than 1000 dpi) adds considerably to the challenge of good text rendering.
To use the bytecode interpreter, you must recompile freetype. Unfortunately, if you use the vanilla freetype and try to simply replace the lib in the Suse system, things will break. You must use the Suse source package.
"It's always something." -- Roseanne Roseannadanna
Inside the package is a file freetype2.spec that explains what you must edit in that file before compiling to get the bytecode interpreter. Notice that this might violate patents. So whether you can do it depends on legal factors beyond my understanding. I emailed Apple to request info on paying whatever royalties to get a license to use the bytecode interpreter, and they didn't respond. Interpret that as you will (pun intended).
Good day!
Thanks again. If I find enough free time, I may well try to get proper font hinting on my system. Stop Software Patents!
-- _____________________ Christopher R. Carlen
Randall Schulz