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

Wrong rendering of variation sequences

XMLWordPrintable

    • x86_64
    • generic

      ADDITIONAL SYSTEM INFORMATION :
      All OS (Windows, Linux, etc.)

      A DESCRIPTION OF THE PROBLEM :
      JavaFX does not display variation selectors.

      This bug is related with SWING bug.
      https://bugs.openjdk.java.net/browse/JDK-8187100
      SWING was fixed from openjdk11.

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Please run following VariationSelectorsTest.java

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      https://drive.google.com/open?id=1CU9r_pm0t5EO8dHj1yLgnKPB2J4ECDsp
      ACTUAL -
      https://drive.google.com/open?id=1lJKavmqlj0XDckR6UR_xIT1Eiag7CZHl

      ---------- BEGIN SOURCE ----------
      import javafx.application.Application;
      import static javafx.application.Application.launch;
      import javafx.scene.Group;
      import javafx.scene.Scene;
      import javafx.scene.layout.VBox;
      import javafx.scene.text.Font;
      import javafx.scene.text.Text;
      import javafx.stage.Stage;

      public class VariationSelectorsTest extends Application {

          public void start(Stage stage) {
              final String fontName = "ipaexm.ttf";
              // download from https://ipafont.ipa.go.jp/node26#en
              // and place in {user.home}/fonts/

              final String base = System.getProperty("user.home")+"/fonts/";
              Font font = Font.loadFont("file://"+base+fontName, 48);
              if (font == null || !"IPAexMincho".equals(font.getName())) {
                  System.err.println("# You need to place "+fontName+" in "+base);
                  System.exit(0);
              }

              stage.setWidth(260);
              stage.setHeight(80);
              Group g = new Group();
              final Scene scene = new Scene(new Group());
              VBox box = new VBox();
              ((Group)scene.getRoot()).getChildren().add(box);
              stage.setScene(scene);

              Text txt = new Text("\u845b\udb40\udd00\u845b\udb40\udd01");
              txt.setFont(font);
              box.getChildren().add(txt);

              stage.show();
          }
      }
      ---------- END SOURCE ----------

      FREQUENCY : always


        1. VariationSelectorsTest.java
          1 kB
          Priyanka Mangal
        2. VS_NG.png
          4 kB
          Priyanka Mangal
        3. VS_OK.png
          3 kB
          Priyanka Mangal

            prr Philip Race
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated: