Hi, Kappa.
Thank you for your advice.
I changed to "UnicodeFont" from "TrueTypeFont".
Then, my program moved as planned!
This is the sample code for the people who change to "UnicodeFont" from "TrueTypeFont", like me.
(Good case)
Font awtFont = new Font("DialogInput", Font.BOLD, 32);
UnicodeFont uniFont = new UnicodeFont(awtFont),false);
uniFont.addAsciiGlyphs();
uniFont.addGlyphs(0x3040, 0x30FF); // Setting the unicode Range
uniFont.addGlyphs(JPN_CHAR_STR); // Setting JPN Font by String
// Setting the Color
uniFont.getEffects().add(new ColorEffect(java.awt.Color.black));
uniFont.getEffects().add(new ColorEffect(java.awt.Color.yellow));
uniFont.getEffects().add(new ColorEffect(java.awt.Color.white));
uniFont.loadGlyphs();
Change the setting order. (Bad case:white is set in first)
// Setting the Color
uniFont.getEffects().add(new ColorEffect(java.awt.Color.white));
uniFont.getEffects().add(new ColorEffect(java.awt.Color.black));
un/Font.getEffects().add(new ColorEffect(java.awt.Color.yellow));
In this case, the string was drawn, but the color of the string was not right.
For example
uniFont.drawString(100, 100, "test", Color.white);
In good case, the string "test" was drawn by Color.white.
But, the string "test" was drawn by Color.yellow in bad cade.
Question:
Dose the setting color order depend on color depth?
I searched this by the google.
but I could not find out.