<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:verdana,helvetica,sans-serif;font-size:10pt"><div>Now with the attachments. Sorry!<br><br>Regarding the tests made on the submitted patch, I tried 2 configurations successfully:<br>1. antialias=true,rgba=none => FT_Render_Mode=FT_RENDER_MODE_NORMAL (XftSwapImage() is executed)<br>2. antialias=true,rgba=rgb => FT_Render_Mode=FT_RENDER_MODE_LCD (XftSwapImage() is bypassed)<br><br>If needed, I would be glad to perform further tests on the X server-client configuration mentioned below.<br></div><div style="font-family:verdana, helvetica, sans-serif;font-size:10pt"><br><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><font face="Tahoma" size="2"><hr size="1"><b><span style="font-weight: bold;">From:</span></b> Mario Vergara <br><b><span style="font-weight: bold;">To:</span></b>
xorg-devel@lists.x.org<br><b><span style="font-weight: bold;">Sent:</span></b> Wed, May 18, 2011 12:47:48 AM<br><b><span style="font-weight: bold;">Subject:</span></b> [xorg-devel][patch] libXft subpixel hinting no image swap<br></font><br>
<div style="font-family:verdana, helvetica, sans-serif;font-size:10pt;"><div>Hi DevTeam<font size="2">,<br><br>I would like to submit the attached patch to your consideration.<br>It
solves a problem regarding bad rendering (e.g. 'yellow halo' font
background) when subpixel hinting is enabled in libXft and the
application runs in a mixed endian X client-server configuration.<br>This case is quite atypical but it can be found in enterprise environments
where servers are grouped by function, for example: login, presentation
(X servers), batch processing, etc.<br>Here are the technical details:<br><br>1. X client<br>----------<br>All X clients run in RHEL 4 x86_64 Linux machines (little endian).<br>Linux 2.6.9-78.0.17.ELsmp #1 SMP Thu Mar 5 04:58:34 EST 2009 x86_64 x86_64 x86_64 GNU/Linux<br>Red Hat Enterprise Linux AS release 4 (Nahant Update 7)<br><br>2. X
server<br>-----------<br>All X servers run in Solaris machines (big endian)<br>SunOS 5.10 Generic_138888-06 sun4u sparc SUNW,Sun-Fire-V440<br>--------------------------------------------------------------<br>> xdpyinfo<br>name of display: :13.0<br>version number: 11.0<br>vendor string: Citrix Systems Inc<br>vendor release number: 59809<br>maximum request size: 4194300 bytes<br>motion buffer size: 256<br>bitmap unit, bit order, padding: 32, MSBFirst, 32<br>image byte order: MSBFirst<br>number of supported pixmap formats: 3<br>supported pixmap formats:<br> depth 1, bits_per_pixel 1, scanline_pad 32<br> depth 8, bits_per_pixel 8, scanline_pad 32<br> depth 24, bits_per_pixel 32, scanline_pad 32<br>keycode range: minimum 8, maximum
207<br>focus: window 0x1000003, revert to PointerRoot<br>number of extensions: 14<br> BIG-REQUESTS<br> DOUBLE-BUFFER<br> Extended-Visual-Information<br> GLX<br> MIT-SHM<br> MIT-SUNDRY-NONSTANDARD<br> RECORD<br> SECURITY<br> SGI-GLX<br> SHAPE<br> SYNC<br> TOG-CUP<br> XC-MISC<br> XTEST<br>default screen number: 0<br>number of screens: 1<br><br>screen #0:<br> dimensions: 1280x800 pixels (325x203 millimeters)<br> resolution: 100x100 dots per inch<br> depths (1): 24<br> root window id: 0x26<br> depth of root window: 24
planes<br> number of colormaps: minimum 1, maximum 1<br> default colormap: 0x22<br> default number of colormap cells: 256<br> preallocated pixels: black 0, white 16777215<br> options: backing-store NO, save-unders NO<br> largest cursor: 32x32<br> current input event mask: 0xfa2033<br> KeyPressMask KeyReleaseMask EnterWindowMask <br> LeaveWindowMask ButtonMotionMask StructureNotifyMask <br> SubstructureNotifyMask
SubstructureRedirectMask FocusChangeMask <br> PropertyChangeMask ColormapChangeMask <br> number of visuals: 1<br> default visual id: 0x23<br> visual:<br> visual id: 0x23<br> class: TrueColor<br> depth: 24 planes<br> available colormap entries: 256 per subfield<br> red, green, blue masks: 0xff0000, 0xff00, 0xff<br> significant bits in color specification: 8 bits<br>-----------------------------------------------------------------<br><br>3. Test application<br>------------------<br>The application used to test the submitted patch was 'rxvt-unicode' linked to patched versions of Xft and
Freetype as follows:<br><br>* freetype_2.4.3 + infinality patches:<br><span><span><a target="_blank" href="http://www.infinality.net/files/freetype-add-subpixel-hinting-infinality-20101114-1.patch">http://www.infinality.net/files/freetype-add-subpixel-hinting-infinality-20101114-1.patch</a></span></span><br><span><span><a target="_blank" href="http://www.infinality.net/files/freetype-enable-subpixel-hinting-infinality-20100909-1.patch">http://www.infinality.net/files/freetype-enable-subpixel-hinting-infinality-20100909-1.patch</a></span></span><br><span><span><a target="_blank" href="http://www.infinality.net/files/freetype-entire-infinality-patchset-20101114-1.patch">http://www.infinality.net/files/freetype-entire-infinality-patchset-20101114-1.patch</a></span></span><br><span><span><a target="_blank"
href="http://www.infinality.net/files/freetype-filter-envvar-fix-20101117-1.patch">http://www.infinality.net/files/freetype-filter-envvar-fix-20101117-1.patch</a></span></span><br><br>*
libXft_2.2.0<br><span><a rel="nofollow" target="_blank" href="http://archive.ubuntu.com/ubuntu/pool/main/x/xft/xft_2.1.14.orig.tar.gz"></a></span><span><a rel="nofollow" target="_blank" href="http://archive.ubuntu.com/ubuntu/pool/main/x/xft/xft_2.1.14-1ubuntu1.diff.gz"></a></span><span><a rel="nofollow" target="_blank" href="https://launchpad.net/ubuntu/+archive/primary/+files/xft_2.2.0.orig.tar.gz">https://launchpad.net/ubuntu/+archive/primary/+files/xft_2.2.0.orig.tar.gz</a></span><br><span><a rel="nofollow" target="_blank" href="https://launchpad.net/ubuntu/+archive/primary/+files/xft_2.2.0-2ubuntu2.diff.gz">https://launchpad.net/ubuntu/+archive/primary/+files/xft_2.2.0-2ubuntu2.diff.gz</a></span><br><br>patched with:<br>libXft-2.2.0/debian/patches/100-libXft-2.1.10-lcd-filter-3.patch<br><br>-> and <-<br>xft_2.2.0-subpixel-hinting-no-image-swap.patch
(attached)<br><br><br>* rxvt-unicode_9.10<br><span><span><a target="_blank" href="http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-9.10.tar.bz2">http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-9.10.tar.bz2</a></span></span><br> <br>I wonder if you could review the patch and let me know if
it solves a general issue or if it is only applicable to my particular case.<br><br>I have also attached a sample image of the overall result.<br><br>Thanks & BR,<br><br>/Mario. <br></font></div>
</div></div></div>
</div></body></html>