-
Bug
-
Resolution: Fixed
-
P2
-
5.0, 6
-
b14
-
generic, x86
-
generic, windows_xp
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2193376 | 6-pool | Steven Loomis | P4 | Closed | Won't Fix |
FULL PRODUCT VERSION :
5.11 and 6.0 pre release
ADDITIONAL OS VERSION INFORMATION :
Testing with Java Run time on Windows XP
A DESCRIPTION OF THE PROBLEM :
Java runtime 5.11 and 6.0 both appear to me to have a bug rendering Hebrew extended html for codes 1456 to 1474 - these should render as accents (i.e. over printing the prior letter) not as separate letters
In 5.10 the character render correctly; in 5.11 and 6.0 they render in sequence right to left without proper overtyping for the range of codes that should render as 'accents' or diagritical marks showing vowels per the Masoretic Text markings
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
enter some text to render in html using #&nnnn where nnnn represents the Hebrew characters - eg # &. 1488 follwowed by # & 1464 - results will be right to left (correct) but the patah will render in a separate character space instead of below the alef
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
results should be that the patah (1464) renders below the alef (1488) - same for all the other codes in the range noted above with any other of the Hebrew alphabet from 1488 and above
ACTUAL -
results are that the vowels render to the left of the consonants instead of under them
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*;
public class HTMLrenderer extends JApplet {
public HTMLrenderer() {
JTextPane textPane = new JTextPane();
textPane.setContentType("text/html");
String srcHTML = "<html>"
+"<div style='font-family:Arial;font-size:18'
font color='#000000'>"
+"מָשְׁכֵנִי"
+"אַחֲרֶיךָ"
+"נָּרוּצָה"
+"הֱבִיאַנִי"
+"הַמֶּלֶךְ"
+"חֲדָרָיו"
+"נָגִילָה"
+"וְנִשְׂמְח
64"
+";ה בָּךְ"
+"נַזְכִּירָ
92"
+";
דֹדֶיךָ"
+"מִיַּיִן"
+"מֵישָׁרִים"
+"אֲהֵבוּךָ"
+"</div></html>";
textPane.setText(srcHTML);
JScrollPane scrollPane = new JScrollPane(textPane);
scrollPane.setPreferredSize( new Dimension(300,300));
getContentPane().add(scrollPane);
}
Here's the test page we used to invoke the above
<html>
<head>
<title>JTextPane</title>
</head>
<body>
<h1></h1>
<hr>
<applet code="HTMLrenderer.class" width="400" height="400">alt="Your
browser
understands the <APPLET> tag but isn't running the applet, for some
reason." Your browser is completely ignoring the <APPLET> tag!
</applet>
<hr>
<a href="HTMLrenderer.class">The source</a>.
</body>
</html>
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
there is no workaround
Attached 510.jpg and 6.jpg are outputs from Java 5 Update 10 and Java 6.
5.11 and 6.0 pre release
ADDITIONAL OS VERSION INFORMATION :
Testing with Java Run time on Windows XP
A DESCRIPTION OF THE PROBLEM :
Java runtime 5.11 and 6.0 both appear to me to have a bug rendering Hebrew extended html for codes 1456 to 1474 - these should render as accents (i.e. over printing the prior letter) not as separate letters
In 5.10 the character render correctly; in 5.11 and 6.0 they render in sequence right to left without proper overtyping for the range of codes that should render as 'accents' or diagritical marks showing vowels per the Masoretic Text markings
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
enter some text to render in html using #&nnnn where nnnn represents the Hebrew characters - eg # &. 1488 follwowed by # & 1464 - results will be right to left (correct) but the patah will render in a separate character space instead of below the alef
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
results should be that the patah (1464) renders below the alef (1488) - same for all the other codes in the range noted above with any other of the Hebrew alphabet from 1488 and above
ACTUAL -
results are that the vowels render to the left of the consonants instead of under them
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.text.*;
public class HTMLrenderer extends JApplet {
public HTMLrenderer() {
JTextPane textPane = new JTextPane();
textPane.setContentType("text/html");
String srcHTML = "<html>"
+"<div style='font-family:Arial;font-size:18'
font color='#000000'>"
+"מָשְׁכֵנִי"
+"אַחֲרֶיךָ"
+"נָּרוּצָה"
+"הֱבִיאַנִי"
+"הַמֶּלֶךְ"
+"חֲדָרָיו"
+"נָגִילָה"
+"וְנִשְׂמְח
64"
+";ה בָּךְ"
+"נַזְכִּירָ
92"
+";
דֹדֶיךָ"
+"מִיַּיִן"
+"מֵישָׁרִים"
+"אֲהֵבוּךָ"
+"</div></html>";
textPane.setText(srcHTML);
JScrollPane scrollPane = new JScrollPane(textPane);
scrollPane.setPreferredSize( new Dimension(300,300));
getContentPane().add(scrollPane);
}
Here's the test page we used to invoke the above
<html>
<head>
<title>JTextPane</title>
</head>
<body>
<h1></h1>
<hr>
<applet code="HTMLrenderer.class" width="400" height="400">alt="Your
browser
understands the <APPLET> tag but isn't running the applet, for some
reason." Your browser is completely ignoring the <APPLET> tag!
</applet>
<hr>
<a href="HTMLrenderer.class">The source</a>.
</body>
</html>
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
there is no workaround
Attached 510.jpg and 6.jpg are outputs from Java 5 Update 10 and Java 6.
- backported by
-
JDK-2193376 Hebrew character size changed
- Closed
- duplicates
-
JDK-6671408 Hebrew diacriticals are shown incorrectly.
- Closed