JDK-6797728 : Enable special code in the JRE to allow JavaFX runtime to treat fonts its own way
  • Type: Enhancement
  • Component: client-libs
  • Sub-Component: 2d
  • Affected Version: 6u14
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: x86
  • Submitted: 2009-01-26
  • Updated: 2011-04-04
  • Resolved: 2011-03-08
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
6u14Fixed 7 b126Fixed
Related Reports
Relates :  
Relates :  
Enable special code in the JRE to allow JavaFX runtime to treat fonts the way it wants to. i.e disable hinting or to special hint/font path processing

EVALUATION Note that this fix was not in fact functional in JDK 7 until b132 because of bug 7020444: Bug in fix for 6797728 : used doAA instead of aaType

EVALUATION A better compromise solution is to disable gridfitting if FM==ON and AA=ON By tying it to fm==on we 1) Don't need new API, not even a private one 2) Get linear metrics in the event we have text which does actually scale linearly. 3) Are only affecting a use case (FM==ON) which doesn't crop up in Swing apps, or most anything else, so they aren't affected. By tying it to AA=ON, we are constraining it to the case where disabling gridfitting produces useful results Also it allows it to be used more precisely in a natural 2D way by setting it for a particular graphics and there are no consequences for any other usage in the JRE.

EVALUATION I think the request is for internal API to enable the same.

EVALUATION After fix for 6774578 we do have way to disable hinting globally: Property name is "sun.java2d.font.experimental.nogridfitting" and the way to use it is to pass: -Dsun.java2d.font.experimental.nogridfitting=true Environment variable is JAVA2D_EXPERIMENTAL_NOGRIDFITTING. Value does not matter, it is is set then grid fitting will be disabled.