freetype-devel
[Top][All Lists]
Advanced

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

Re: [Devel] Rendering (by FreeType) and hinting of Latin small 'a'


From: Vadim Plessky
Subject: Re: [Devel] Rendering (by FreeType) and hinting of Latin small 'a'
Date: Wed, 11 Sep 2002 12:15:40 +0400
User-agent: KMail/1.4.6

Hello David!

On Tuesday 10 September 2002 12:43 am, David Turner wrote:
|  Hello Vadim,
|
|  Vadim Plessky wrote:
|  > I'd like to discuss (again) rendering of Serif fonts, and, in particular
|  > (to narrow the scope) - Latin small 'a'.
|  > I have prepared a web page with examples demonstrating different
|  > rendering of this glyph
|  > http://freetype.newmail.ru/misc/hinting-a.html
|  >
|  > [...]
|  >
|  > Now about problem I see at a moment.
|  > 1) topology of 'a' is destroyed at all examples, except non-AA
|  > rendering. I refer here to central, near-horizontal curve, in the middle
|  > of 'a' enabling sub-pixel rgb decimation doesn't help here.
|
|  I have introduced some changes in the automatic and Postscript hinters
|  lately to deal with disappearing curved diagonals (like in "S" or "2").
|  There are chances that these might also enhance the hinting of
|  your "a"s. Could you test the rendering of the current CVS code
|  to see if something changed ??

I upgraded to FT 2.13-RC1 (Aug.28 snapshot), and indeed that problem was 
fixed.
But new ones appeared. :-(


|
|  > 2) in ftview rendering, even bottom part of 'a' is disconnected from the
|  > vertical stem.
|  > It's very visible at screenshot in natural size, and on enlarged s/s as
|  > well.
|
|  This is not very surprising, since the second glyph doesn't have any
|  hint on the lower stem. The Postscript hinter relies on what is provided
|  by the font file and won't try to detect stems on its own.

That was intentional. And FT 2.13, BTW, renders all 3 glyphs identically!
So it seems it auto-aligns bottom part of the 'a'.

|
|  Note that the auto-hinter does render all three glyphs identically, since
|  their outlines are the same.
|
|  > 3) My testing of 5 different Times clones (variants), in addition to the
|  > version I develop,  demonstrates, that all variants of Times, with
|  > exception of Times New Roman, have similiar problem described above.
|  > See screenshots at th ebottom of th epage (Times New Roman is 2nd in
|  > series, each three rendered glyphs are 12pt, 11pt, 10pt Latin 'a')
|  >
|  > Here are my questions:
|  > a) can this *topology* (visually broken  curve) issue be fixed?
|  > I demonstrated problem on example of 'a', but many other glyphs are
|  > affected (in AA or RGN-AA modes), too.
|
|  Maybe, please test and report your opinion on that..

ok, I created new page dedicated to this problem, together with new test font 
(experimental-a, atatched, there is a link to it from the page as well)
Please check it out:
http://freetype.newmail.ru/misc/experimental-a.html

I know that from some countries (Australia? Ireland?) that location can be 
slow to access, so if you have timeout on server - please e-mail me, I can 
send files as mail attachment.

BTW: handling of Topology is much better in FT 2.1.3 than in FT 2.0.9
But still FT can generate, on occasion, broken contours...

Comments from my page (FT 2.1.3-RC1 rendering, AA enabled):
"All glyphs are rendered blurred. Compare this to rendering on screenshot 
below, which uses auto-hinter (where text is crisp). My understanding is that 
PS gray renderer uses different path/code when it renders glyphs with hints 
generated by auto-hinter (in contrast with PS glyphs which have pre-defined 
PS hints). This is very strange and undesirable. I consider this is a bug in 
FreeType 2.1.3-RC1 "

|
|  > b) how rendering (by FreeType, not too much interested in Adobe Type
|  > Manager or Windpows' rasterizer) of middle part of 'a' can be enhanced?
|  > Should I artificially deformate curve to make constrains snapping to
|  > horizontal position? (like is done in Times New Roman)
|  > This is not very desirable, as 'a' in Times New Roman has too small
|  > bottom part, IMO, and this is not easy for screen reading.
|  > Diagonal hinting also doesn't help here, as, frankly speaking, this part
|  > does't conform to diagonal hinting definition.
|
|  Try to make the stem slightly larger when it connects to the vertical
|  stem in the "a". This should help make it stronger/visible. Otherwise,
|  I don't see what could really done..

Ok, please look at URL above.
I did it slightly larger, but this doesn't help.

variant of 'a' at f, g,h positions in font demonstrate *what* can be done, and 
confirm my statement that FT *can* handle such cases.
Hope my experimental font will help to make rendering better.
 
|
|  > c) Is it possible, in some way, to increase *tension* for FT rasterizer
|  > when it follows some part of the contour/curve?
|  > It's like of driving a car with high speed, and follow smooth turn to,
|  > say, left at 80km/hour.
|  > It can be done, if you increase your speed instantly /with acceleration/
|  > :-) So, I think we should find a way to do the same with such curves. Is
|  > it possible to do?  What are your opinions?
|
|  I fail to understand precisely what you mean here. Do you have anything
|  more visual as an explanation (maybe a small graphics could help ??)

variuant under 'b' position demonstrates that this (for some reason) doesn't 
help. 
I moved control points by 100 units far away from position they were before, 
it's like increasing acceleration when driving.
I will try to experiment more and will let you know wether I achieved 
something.
My next standpoint is 'a' from Garamond and Caslon - they always had much more 
problems (in rendering) than *trivial Times* :-)

|
|  Best Regards,
|
|  - David
|  _______________________________________________
|  Devel mailing list
|  address@hidden
|  http://www.freetype.org/mailman/listinfo/devel

My best regards,
-- 

Vadim Plessky
http://kde2.newmail.ru  (English)
33 Window Decorations and 6 Widget Styles for KDE
http://kde2.newmail.ru/kde_themes.html
KDE mini-Themes
http://kde2.newmail.ru/themes/

Attachment: experimental-a-font.zip
Description: Zip archive


reply via email to

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