United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6685312 Unscaled advances for LCD Text in 6u10 beta
JDK-6685312 : Unscaled advances for LCD Text in 6u10 beta

Details
Type:
Bug
Submit Date:
2008-04-07
Status:
Closed
Updated Date:
2010-10-01
Project Name:
JDK
Resolved Date:
2008-04-12
Component:
client-libs
OS:
generic
Sub-Component:
2d
CPU:
generic
Priority:
P2
Resolution:
Fixed
Affected Versions:
6u10
Fixed Versions:
6u10 (b22)

Related Reports
Backport:
Relates:
Relates:

Sub Tasks

Description
If a simple scale is applied to the graphics when using LCD text on JDK 6u10 on windows,
then the text appears scaled, but the advances are not, so that the text is
incorrectly positioned.

                                    

Comments
EVALUATION

This is caused by the fix for 6656651 to use the native rasteriser.
One element of the logic is to still use T2K for advances, and store those
in the glyph image. That is supposed to be in device space (ie scaled), but
to retrieve the value an internal API is called which has already transformed
the advance back into user space. The fix is simple: instruct the API not to
perform that transform in just this case.
                                     
2008-04-07
EVALUATION

When directly querying the advances this is further manifested as the advance
being unscaled twice. ie since after the image is retrieved the user space advance
was stored along with it, when later querying it, its assumed to be still device
space and is again transformed back into user space.
                                     
2008-04-07
WORK AROUND

Since this is a bug only in LCD text mode, and presently scenario doesn't
provide a way to use LCD text, this manifests only in Swing components picking
that up as a desktop setting. So setting desktop font smoothing to "Standard"
will cure it.
                                     
2008-04-07



Hardware and Software, Engineered to Work Together