From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12253 invoked by alias); 21 May 2002 18:00:53 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 12246 invoked from network); 21 May 2002 18:00:50 -0000 Received: from unknown (HELO mail3.microsoft.com) (131.107.3.123) by sources.redhat.com with SMTP; 21 May 2002 18:00:50 -0000 Received: from INET-VRS-03.redmond.corp.microsoft.com ([157.54.5.27]) by mail3.microsoft.com with Microsoft SMTPSVC(5.0.2195.4905); Tue, 21 May 2002 11:00:49 -0700 Received: from 157.54.6.197 by INET-VRS-03.redmond.corp.microsoft.com (InterScan E-Mail VirusWall NT); Tue, 21 May 2002 11:00:49 -0700 Received: from red-msg-08.redmond.corp.microsoft.com ([157.54.12.5]) by inet-hub-06.redmond.corp.microsoft.com with Microsoft SMTPSVC(5.0.2195.4905); Tue, 21 May 2002 11:00:49 -0700 X-MimeOLE: Produced By Microsoft Exchange V6.0.6177.0 content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: rxvt cursor corruption under WinXP/ClearType Date: Tue, 21 May 2002 14:37:00 -0000 Message-ID: <7C083876C492EB4BAAF6B3AE0732970E07298468@red-msg-08.redmond.corp.microsoft.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: From: "Stephan Mueller" To: , , X-OriginalArrivalTime: 21 May 2002 18:00:49.0026 (UTC) FILETIME=[70419620:01C200F1] X-SW-Source: 2002-05/txt/msg01346.txt.bz2 So, while I know nothing about ClearType internals, I asked around and got some info. Hope this is helpful and finds its way to someone who can do something with it. If it leads to more questions (and I suspect it might) I can forward to appropriate folks. --- "ClearType has up to a one pixel bleed on each side of the character. This is done to help dissipate the color. More than likely this app is doing something like erasing a character by drawing an opaque space, which leaves garbage on the screen. Note that this can happen with any fixed-pitch font that has overhang (a feature that is fine with TrueType but problematic with fixed-pitch fonts). The bounding box of the character can not be updated because that would break compatibility with earlier fonts. Arguably this is not correct, but breaking compatibility is incorrect as well. So there is no easy fix here - the only option I see is to modify the application." --- "I'm not aware of any documentation on this topic nor am I aware of any fix to this in any of our text libraries." --- "The answer to that specific questions (how do MS apps handle this?) is that we are drawing as much as possible, full word, full line of text together. Placing together the characters in a string buffer before merging with foreground and background color. If application implement their text and edit box display in a way that works fine with script fonts where characters have big overlapp then they will work fine with ClearType." ---=20 "I was thinking about this last night, and I agree that the only 'correct' way is to deal with this at the word level. That said, with fixed pitch fonts and a simple one color background, one might be able to make some simplifying assumptions, although this is somewhat risky. With a constant background color, one could redraw the character to be erased with foreground color set equal to background color in opaque mode. Another solution might be to use a specific font that is guaranteed to have a minimum of one pixel sidebearing on each side at all required sizes." --- "The console code in Windows is very specific on what font it accepts. The font needs to be fixed width with no negative sidebearing. I'm almost sure that our console code, as we type characters is always redrawing the full line and not only the character that we type. Turning off ClearType through the logfont when you have to draw one character at a time in opaque mode would be a good decision. (a better decision would be drawing text in a way that is compatible with negative sidebearings.)" --- stephan(); -----Original Message----- From: Philip Flip Kromer [mailto:flip@mrflip.com]=20 Sent: Friday, April 12, 2002 5:58 PM To: cygwin@cygwin.com Subject: Re: rxvt cursor corruption under WinXP/ClearType I have the same problem with rxvt. I did not know about reverting to=20 courier as a workaround -- thanks! Emacs-NT also has this problem (but only occasionally). They claim that it=20 is because Windows with cleartype lies about how to compute a bounding box=20 for a font but MS will not share the information. File under "yet another=20 example of why the DOJ consent degree sucks." Jason Rumney from the emacs devel seems to have some good information on the problem. See, for example, http://mail.gnu.org/pipermail/help-emacs-windows/2002-April/001355.html Jason Rumney jasonr@gnu.org writes: No, it doesn't. Sometimes it draws outside the bounding-box for the glyph, which results in a garbaged display when scrolling. That is why sub-pixel anti-aliasing was disabled for 21.2. If you can find any documentation from Microsoft about how to determine the REAL bounding box for a glyph AFTER sub-pixel anti-aliasing is applied, then please tell me. or http://groups.google.com/groups?hl=3Den&safe=3Dimages&selm=3Dm3zo2ugsve.fsf= %40 nyaumo.btinternet.com Jason Rumney (jasonr@btinternet.co) writes: Thanks for the report. Since Microsoft do not seem to be making public what changes they had to make to their own products to fix this (early betas of Windows XP had reports of the same sorts of display problem with all applications, so I assume they have "fixed" it by changing an MFC library or something), there is not a lot we can do. flip Rui Carmo wrote: > Hello there, >=20 > I've been searching the mailing-list archives for posts concerning the > vertical cursor "trails" bug that rxvt exhibits under Windows XP with ClearType, but have found nothing. >=20 > Steps to reproduce the bug: > - Under Windows XP, activate ClearType (Display > Properties|Appearance|Effects|Use the following method... ClearType) > - Start rxvt with the following command line: > rxvt.exe -tn xterm -sr -fn "Lucida Console-14" -sl 30000 -e bash=20 > --login -i > - Type some chars and notice the vertical bars the cursor leaves (erase or redraw are off by one pixel) >=20 > This only happens with monospaced fonts other than Courier New or > System (Lucida Console, Andale Mono, and practically all other=20 > monospaced fonts I tried). >=20 > I am willing to help debug/test this, and have spent a couple of hours > trying to recompile > rxvt on my box (setting up CVS, etc., and following the steps in > /usr/doc/Cygwin/rxvt-2.7.2.README), but would like to get in touch > with other folk that have been working on rxvt to swap tips. >=20 > Since I am not subscribed to the list, please e-mail me directly. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/