[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freetype
Subject:    Re: [ft] Why is hinting stronger with subpixel rendering?
From:       David Turner <dturner () nds ! com>
Date:       2006-04-04 13:13:56
Message-ID: 44327114.9050204 () nds ! com
[Download RAW message or body]

Roberto Ragusa a écrit :
> It is not well understood why font render quality on Fedora Core 5 appears worse \
> than on Fedora Core 4.
> 
> I don't understand why the width of lowercase "i" or "l" is quantized to an exact \
> pixel when subpixel rendering is on and not quantized to an exact pixel when \
> subpixel rendering is off.
> It should happen the opposite, shouldn't it?
> 
> 
Yes, it should, but this isn't the case for the moment, mainly for 
historical reasons.
My main concern is that non-quantized LCD rendering produces many unpleasant
blue and yellow bleeds that a lot of people don't stand.

The culprit is really the algorithm used in libXft (and now Cairo, which 
duplicates
the feature) which doesn't do a proper job when filtering the RGB-pixmap 
generated
by FreeType.

Until a patch is provided to fix this, I prefer to keep the current 
behaviour to avoid
too much people complaining. We're trying to have a smooth 2.2 release here.

There are a few other things to fix in libXft/Cairo, but that will be 
for later.
I hope I'll find the time to provide the necessary fixes myself.

Regards,

- David Turner
- The FreeType Project  (www.freetype.org)

PS: By the way, it's possible to disable this quantization by applying 
the following
patch:


---------------------------------------------------------------------------------------------
                
Index: src/autofit/aflatin.c
===================================================================
RCS file: /cvsroot/freetype/freetype2/src/autofit/aflatin.c,v
retrieving revision 1.34
diff -u -r1.34 aflatin.c
--- src/autofit/aflatin.c    21 Mar 2006 16:30:04 -0000    1.34
+++ src/autofit/aflatin.c    4 Apr 2006 13:11:06 -0000
@@ -1344,14 +1344,14 @@
      *  We snap the width of vertical stems for the monochrome and
      *  horizontal LCD rendering targets only.
      */
-    if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD )
+    if ( mode == FT_RENDER_MODE_MONO )
       other_flags |= AF_LATIN_HINTS_HORZ_SNAP;
 
     /*
      *  We snap the width of horizontal stems for the monochrome and
      *  vertical LCD rendering targets only.
      */
-    if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD_V )
+    if ( mode == FT_RENDER_MODE_MONO )
       other_flags |= AF_LATIN_HINTS_VERT_SNAP;
 
     /*
---------------------------------------------------------------------------------------------




> Please have a look at this picture
> 
> https://bugzilla.redhat.com/bugzilla/attachment.cgi?id=127209
> 
> and feel free to post a comment on this bug if you have any idea on what's \
> happening 
> https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=187688
> 
> Thank you. Please CC replies to me as I'm not subscribed.
> 
> Best regards.
> 


***********************************************************************************
Information contained in this email message is confidential and may be privileged, \
and is intended only for use of the individual or entity named above. If the reader \
of this message is not the intended recipient, or the employee or agent responsible \
to deliver it to the intended recipient, you are hereby notified that any \
dissemination, distribution or copying of this communication is strictly prohibited. \
If you have received this communication in error, please immediately notify the \
                postmaster@nds.com and destroy the original message.
*********************************************************************************** 



_______________________________________________
Freetype mailing list
Freetype@nongnu.org
http://lists.nongnu.org/mailman/listinfo/freetype


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic