Integrated: 8304350: Font.getStringBounds calculates wrong width for TextAttribute.TRACKING other than 0.0

Jonathan Dowland jdowland at openjdk.org
Thu Apr 13 12:05:53 UTC 2023


On Wed, 5 Apr 2023 13:58:48 GMT, Jonathan Dowland <jdowland at openjdk.org> wrote:

> 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.

This pull request has now been integrated.

Changeset: 6b9b7d1d
Author:    Jonathan Dowland <jdowland at openjdk.org>
Committer: Thomas Stuefe <stuefe at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/6b9b7d1d921367418f82c2813b272d3447a47595
Stats:     4 lines in 1 file changed: 2 ins; 0 del; 2 mod

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

Reviewed-by: stuefe

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

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



More information about the client-libs-dev mailing list