--- old/src/java.desktop/share/classes/javax/swing/text/GlyphPainter1.java 2017-10-23 11:46:31.263468900 +0530 +++ new/src/java.desktop/share/classes/javax/swing/text/GlyphPainter1.java 2017-10-23 11:46:30.641968900 +0530 @@ -59,7 +59,11 @@ sync(v); Segment text = v.getText(p0, p1); int[] justificationData = getJustificationData(v); - int width = Utilities.getTabbedTextWidth(v, text, metrics, (int) x, e, p0, + + Component comp = v.getContainer(); + FontMetrics metrics1 = comp.getFontMetrics(comp.getFont()); + + float width = Utilities.getTabbedTextWidth(v, text, metrics1, x, e, p0, justificationData); SegmentCache.releaseSharedSegment(text); return width;