Details
-
Type:
Bug
-
Status: Resolved
-
Priority:
P3
-
Resolution: Fixed
-
Affects Version/s: 9
-
Fix Version/s: 9
-
Component/s: client-libs
-
Labels:
-
Subcomponent:
-
Resolved In Build:b150
-
CPU:x86
-
OS:other
Description
FULL PRODUCT VERSION :
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+140)
Java HotSpot(TM) Server VM (build 9-ea+140, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows [Version 10.0.14393]
A DESCRIPTION OF THE PROBLEM :
Positioning of diacritical marks for rendering of e.g. Arabic text is incorrect (shifted vertically with respect to correct position).
This seems to be a regression introduced with the change in http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/a0c8eb083f39, flipping the sign of y glyph offset when processing data returned by Harfbuzz.
REGRESSION. Last worked in version 9
ADDITIONAL REGRESSION INFORMATION:
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+136)
Java HotSpot(TM) Server VM (build 9-ea+136, mixed mode)
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run a sample program with the source given below.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Diacritics in the rendered text are located at correct positions (as can be seen when running using 9-ea+136 or latest Java 8 build).
ACTUAL -
Some diacritics are rendered lower than expected.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import javax.swing.*;
import java.awt.*;
public class JLabelTest {
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame();
JLabel label = new JLabel("العَرَبِيَّة");
label.setFont(new Font("Courier New", Font.PLAIN, 36));
frame.add(label);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
---------- END SOURCE ----------
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+140)
Java HotSpot(TM) Server VM (build 9-ea+140, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows [Version 10.0.14393]
A DESCRIPTION OF THE PROBLEM :
Positioning of diacritical marks for rendering of e.g. Arabic text is incorrect (shifted vertically with respect to correct position).
This seems to be a regression introduced with the change in http://hg.openjdk.java.net/jdk9/jdk9/jdk/rev/a0c8eb083f39, flipping the sign of y glyph offset when processing data returned by Harfbuzz.
REGRESSION. Last worked in version 9
ADDITIONAL REGRESSION INFORMATION:
java version "9-ea"
Java(TM) SE Runtime Environment (build 9-ea+136)
Java HotSpot(TM) Server VM (build 9-ea+136, mixed mode)
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Run a sample program with the source given below.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Diacritics in the rendered text are located at correct positions (as can be seen when running using 9-ea+136 or latest Java 8 build).
ACTUAL -
Some diacritics are rendered lower than expected.
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import javax.swing.*;
import java.awt.*;
public class JLabelTest {
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
JFrame frame = new JFrame();
JLabel label = new JLabel("العَرَبِيَّة");
label.setFont(new Font("Courier New", Font.PLAIN, 36));
frame.add(label);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
});
}
}
---------- END SOURCE ----------
Attachments
Issue Links
- relates to
-
JDK-8248352 [TEST_BUG] Test test/jdk/java/awt/font/TextLayout/ArabicDiacriticTest.java can leave frame open
-
- Resolved
-