< prev index next >
src/java.desktop/share/classes/java/awt/Font.java
Print this page
@@ -54,10 +54,11 @@
import sun.font.CompositeFont;
import sun.font.CreatedFontTracker;
import sun.font.Font2D;
import sun.font.Font2DHandle;
import sun.font.FontAccess;
+import sun.font.FontDesignMetrics;
import sun.font.FontManager;
import sun.font.FontManagerFactory;
import sun.font.FontUtilities;
import sun.font.GlyphLayout;
import sun.font.FontLineMetrics;
@@ -2601,13 +2602,12 @@
if (simple) {
simple = ! FontUtilities.isComplexText(chars, beginIndex, limit);
}
if (simple) {
- GlyphVector gv = new StandardGlyphVector(this, chars, beginIndex,
- limit - beginIndex, frc);
- return gv.getLogicalBounds();
+ FontDesignMetrics metrics = FontDesignMetrics.getMetrics(this, frc);
+ return metrics.getSimpleBounds(chars, beginIndex, limit-beginIndex);
} else {
// need char array constructor on textlayout
String str = new String(chars, beginIndex, limit - beginIndex);
TextLayout tl = new TextLayout(str, this, frc);
return new Rectangle2D.Float(0, -tl.getAscent(), tl.getAdvance(),
< prev index next >