So can you please update to 7u51 (current security baseline) and see if
that cures it ?
http://www.oracle.com/technetwork/java/javase/7u51-relnotes-2085002.html
-phil.
On 4/9/2014 10:29 AM, Mark Davis ☕️ wrote:
jdk1.7.0_25.jdk
Mark <https://google.com/+MarkDavis>
/
/
/— Il meglio è l’inimico del bene —/
//
On 9 April 2014 18:31, Phil Race <philip.r...@oracle.com
<mailto:philip.r...@oracle.com>> wrote:
Sounds like https://bugs.openjdk.java.net/browse/JDK-8015556
[macosx] surrogate pairs do not render properly (show up as boxes
or incorrect glyphs)
But that was fixed in 7u40. What JDK 7 update is in use here ?
-phil.
On 4/9/14 9:17 AM, Naoto Sato wrote:
Hi Mark,
On 4/9/14, 3:11 AM, Mark Davis ☕️ wrote:
I'm having some trouble with drawing supplemental characters in
Java. It
appears to be due to bugs in Java.
*First, how do I report this? And second, can anyone think of a
work-around?*
Here is the link to report an issue against JDK:
http://bugreport.java.com/bugreport/
Please choose "classes_2d" as the subcategory.
This is on a Mac OS 10.9.2, JDK 7, and I am rendering a number of
characters in a loop.
When I call
graphics.drawString(s, xStart, ascent);
Each supplemental character that shares the same first char (high
surrogate) gets the same image (see attachments).
It appears that it is caching by char instead of by code point.
To work around the problem, I tried changing the code to draw glyph
vectors instead.
FontRenderContext frc =
graphics.getFontRenderContext();
GlyphVector gv = myFont.createGlyphVector(frc, s);
...
Shape shape = gv.getOutline(xStart, ascent);
graphics.draw(shape);
To my surprise, it got even worse: I get an unknown glyph after
each
image. See attachments.
It appears that when it is advancing through the string to get the
glyphs, it is picking up the glyph ID for the code point, but
then it is
only advancing by 1, so it is always picking up garbage after each
character.
Yeah, your explanation does sound like what's happening in the
font rendering on MacOSX. Phil/Mike, do you have any idea what's
going on?
Naoto