RFR: 8167268: StandardGlyphVector.getGlyphMetrics creates metrics with erroneous bounds for characters with no outline (e.g., the space character ' ') [v2]

Daniel Gredler dgredler at openjdk.org
Tue Sep 30 20:12:25 UTC 2025


On Tue, 30 Sep 2025 19:19:02 GMT, Sergey Bylokhov <serb at openjdk.org> wrote:

>> Daniel Gredler has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Split long line
>
> src/java.desktop/share/classes/sun/font/StandardGlyphVector.java line 611:
> 
>> 609: 
>> 610:         Rectangle2D vb = getGlyphVisualBounds(ix).getBounds2D();
>> 611:         if (!vb.isEmpty()) {
> 
> Just to double check: do we want to skip glyphs only when the bounds are empty, or we also want to skip them when the bounds are flipped (negative width/height)?

Do you know when that might happen? This code gets its values (after a few layers of abstraction) from `StandardGlyphVector$GlyphStrike.getGlyphOutlineBounds(int, float, float)`, which has a similar `isEmpty` check.

> test/jdk/java/awt/font/GlyphVector/GlyphMetricsTest.java line 65:
> 
>> 63:     }
>> 64: 
>> 65:     private static void assertEqual(double d1, double d2, double variance, String scenario, int index) {
> 
> please split the long line to have 80 chars

Done, let me know if that looks good.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/27580#discussion_r2392715416
PR Review Comment: https://git.openjdk.org/jdk/pull/27580#discussion_r2392715306


More information about the client-libs-dev mailing list