This is one proposed solution for https://bugs.openjdk.org/browse/JDK-8304350

`java.awt.Font.getStringBounds(char[],int,int,FontRenderContext)` applies a 
heuristic to determine whether the question it's answering is "simple" or not. 
The bug described in 8304350 only occurs in the simple=true branch.

Extend the "simple?" heuristic to consider a tracking attribute not-simple and 
to use the complex branch in those cases.

One could argue that the root bug still exists: the simple path goes on to 
delegate to `sun.font.FontDesignMetrics.getMetrics(Font,FontRenderContext)`, 
although that's a private/internal API.

-------------

Commit messages:
 - 8304350: Font.getStringBounds calculates wrong width for 
TextAttribute.TRACKING other than 0.0

Changes: https://git.openjdk.org/jdk/pull/13352/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13352&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8304350
  Stats: 4 lines in 1 file changed: 2 ins; 0 del; 2 mod
  Patch: https://git.openjdk.org/jdk/pull/13352.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/13352/head:pull/13352

PR: https://git.openjdk.org/jdk/pull/13352

Reply via email to