freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Devel] ClearType-like results - my quest is over (for now)


From: Yaroslav Rastrigin
Subject: [Devel] ClearType-like results - my quest is over (for now)
Date: Sat, 14 Jun 2003 14:45:01 +0400
User-agent: KMail/1.5.1

Good time of day !

Well, first - I want to thank everybody who answered and don't answered my 
questions - very often they were lame and irrelevant :-) Your answers, as 
well as your silence were motivating and convincing to continue 
investigations :-).

What I have now - results are both promising and disappointing. First - two 
screenshots :
http://www.relex.ru/~yarick/CTFT/ctvsft.png
anf
http://www.relex.ru/~yarick/CTFT/ftmoz.png
(Warning for dialup users - both are fullscreen (1024x768) and large (117 and 
124 kb)).
I gave up on modifying 'smooth' renderer/rasterizer to produce monochrome 
output, and instead hacked monochrome rasterizer (in src/raster) to return 
pixmaps instead of bitmaps. (I'm still convinced algorithms used in 'smooth' 
renderer could work correctly in extreme case of PIXEL_BITS = 0)
(Standard antialiasing, when used with subpixel filtering, produces way too 
'bold' and 'fuzzy' results, and makes text output way less readable).
I've also reimplemented XFT's subpixel filter , according to grc.com/cleartype 
(although filter's values are slightly different). The difference between MS 
XP ClearType and this implementation remains, though,  and clearly visible . 
I've tried to investigate this difference, and it turns out freetype's 
truetype glyph loader, or, more precise, hinter, grid-fits outline to nearest 
_whole_pixel_ boundary (x + 32 & -64). This is perfectly Ok with mono and 
standard anti-aliased output, but since with subpixel rendering we could (and 
will) render with 3x precision, this behaviour adds 'blockiness' and 
'jagginess' (sorry, English isn't my native , and I hope grammar/spelling 
nazis won't beat me to death :-). 
I've tried to quick-hack ttinterp.c, but this one piece of software requires 
way more knowlegde on this subject than I have. 
So, I'm giving up. I don't think I can make things substantially better in 
reasonable amount of time. I'm believing, however, that somebody 
knowledgeable and dedicated enough could produce substantially better 
results. I would be glad if someone will be interested enough to continue 
this research.

-- 
With all the best, yarick at relex dot ru.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]