src/java.desktop/share/classes/sun/font/GlyphLayout.java

Print this page

        

@@ -406,10 +406,13 @@
         }
 
         int lang = -1; // default for now
 
         Font2D font2D = FontUtilities.getFont2D(font);
+        if (font2D instanceof FontSubstitution) {
+            font2D = ((FontSubstitution)font2D).getCompositeFont2D();
+        }
 
         _textRecord.init(text, offset, lim, min, max);
         int start = offset;
         if (font2D instanceof CompositeFont) {
             _scriptRuns.init(text, offset, count); // ??? how to handle 'common' chars