[OpenJDK 2D-Dev] [8] Request for review: 7190349 [macosx] Text (Label) in a JTabbedPane is incorrectly drawn
Phil Race
philip.race at oracle.com
Tue May 21 21:27:02 UTC 2013
I think this fix is fine. In the other rasteriser cases we use
(T2K, freetype) we also flip the sign of the y advance as it is stored
as the image y advance. It looks like this was just missing here.
This change should then only affect the final glyph rendering.
-phil.
On 5/21/2013 12:40 PM, Sergey Bylokhov wrote:
> Hello,
> Please review the fix for jdk 8.
> On OSX advanceY in the glyphInfo is inverted.
> It is used to increment position when the glyph is drawn as part of a
> string of text:
> @see DrawGlyphList.c.setupBlitVector():
> ....
> for (g=0; g<len; g++) {
> ginfo = (GlyphInfo*)imagePtrs[g];
> .....
> FLOOR_ASSIGN(gbv->glyphs[g].y, y + ginfo->topLeftY);
> .....
> y += ginfo->advanceY;
> }
>
> advances are initialized in the CGGlyphImages.m via
> JRSFontGetAdvancesForGlyphsAndStyle().
> Note that JRSFontGetAdvancesForGlyphsAndStyle use "strike->fTx" and
> the origin of this transform is relative to the bottom-left corner
> baseline. So we should pass "strike->fAltTx" to the
> JRSFontGetAdvancesForGlyphsAndStyle(Not sure is it ok or not) OR to
> invert the received advance.height.
>
> Bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7190349
> Webrev can be found at: http://cr.openjdk.java.net/~serb/7190349/webrev.00
>
> --
> Best regards, Sergey.
>
More information about the 2d-dev
mailing list