Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8154863

Incomplete character/glyph definition for Devanagari unicode chart (900-97F)

XMLWordPrintable

    • x86
    • windows_7

      FULL PRODUCT VERSION :
      java version "1.8.0_77"
      Java(TM) SE Runtime Environment (build 1.8.0_77-b03)
      Java HotSpot(TM) 64-Bit Server VM (build 25.77-b03, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Windows 10

      A DESCRIPTION OF THE PROBLEM :
      Since Unicode 6.0 (2010) and 7.0, the gaps in code chart 900-97F for Devanagari
      (Indic scripts) have been filled/defined. But Java still reflects the status of
      Unicode 5.0 (2006). Would you kindly implement a font showing all glyphs?

         As the problems does not depend on a particular windows version, I hardly believe that it is in any way connected with bug JDK-8133309, which is solved by now for jdk9. Unfortunately I do not have a computer with jdk9 pre-release in reach, but you can easily test with the following code, which is supposed to show all glyphs of later definition, but under jdk8 shows only squares.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Compile and run the code below.

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Not a single square displayed, but only characters.
      ACTUAL -
      Only squares.

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
      import java.awt.*;
      import javax.swing.*;

      public class EmptyDeva extends JFrame {
        public EmptyDeva() {
          setSize(370, 200);
          setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
          JTextField tf= new JTextField(
      "\u0900\u0904\u093A\u093B\u094E\u094F\u0955\u0956\u0957"+
      "\u0971\u0972\u0973\u0974\u0975\u0976\u0977\u0978\u0979\u097A"+
      "\u097B\u097C\u097D\u097E\u097F");
          tf.setFont(tf.getFont().deriveFont(18.f));
          add(tf);
          setVisible(true);
        }

        public static void main(String args[]) {
          EventQueue.invokeLater(EmptyDeva::new);
        }

      }
      ---------- END SOURCE ----------

        1. Sample_Output_JDK8_JDK9.jpg
          12 kB
          Ajit Ghaisas
        2. Sample_Output_JDK9_with_Devanagari.jpg
          12 kB
          Ajit Ghaisas
        3. Sample_Output_without_setFont.jpg
          12 kB
          Ajit Ghaisas

            aghaisas Ajit Ghaisas
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: