[Bug 26118] Re: Bad rendering (hinting) in Evince and Xpdf
Marciano Siniscalchi
msiniscalchi at gmail.com
Thu Mar 8 19:55:02 UTC 2007
For the record, the fix that works for me is to change the
#ifdef...#else...#endif block beginning at line 179 of file
SplashFTFont.cc as follows:
// if we have the FT2 bytecode interpreter, autohinting won't be used
// MS: actually, disregard bytecode setting, as it yields poor results anyway
// #ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
// if (FT_Load_Glyph(ff->face, gid,
// aa ? FT_LOAD_NO_BITMAP : FT_LOAD_DEFAULT)) {
// return gFalse;
// }
//#else
// FT2's autohinting doesn't always work very well (especially with
// font subsets), so turn it off if anti-aliasing is enabled; if
// anti-aliasing is disabled, this seems to be a tossup - some fonts
// look better with hinting, some without, so leave hinting on
if (FT_Load_Glyph(ff->face, gid,
aa ? FT_LOAD_NO_HINTING | FT_LOAD_NO_BITMAP
: FT_LOAD_DEFAULT)) {
return gFalse;
}
//#endif
[sorry if I don't generate a patch---I still haven't learned how to do
so...]
In other words, I force autohinting off if anti-aliasing is enabled,
regardless of whether or not Freetype was compiled with the bytecode
interpreted on (which, in Ubuntu, it is).
Notice that this compile-time checking that poppler does explains why
this bug is hard to trace. Even if you recompile Freetype without the
BC on, it still won't matter, as poppler is compiled against the
"standard" Ubuntu distribution with BC enabled.
M
--
Marciano Siniscalchi
--
Bad rendering (hinting) in Evince and Xpdf
https://launchpad.net/bugs/26118
More information about the desktop-bugs
mailing list