6
\$\begingroup\$

I am creating an application which downloads names from server. These names can be any unicode language text which I need to render in XNA on WP7. The biggest problem I see here is WP7 xna system can't render unicode (especially complex script) well. I tried few asian scripts and it looks ridiculous. Some aisan scripts render a character differently depending on neighbor character (generally vowels). Spritefont just renders them one after another without giving any consideration to vowels.

I think I need something like freetype library to render vector fonts on runtime. I wish to know if there are any alternatives to overcome this issue.

\$\endgroup\$
2
  • \$\begingroup\$ What font did you add as a spritefont? If you use the same font and type the same characters into Word, do they show up as expected? \$\endgroup\$
    – Nate
    May 20 '11 at 21:26
  • \$\begingroup\$ @Nate Yes, I did some investigation into this. It seems like XNA dont have any support for Complex Text Layout (CTL - en.wikipedia.org/wiki/Complex_text_layout). I looked into shwan's blog - blogs.msdn.com/b/shawnhar/archive/2007/04/26/…. Its very surprising. I dont know how others handle this situation. \$\endgroup\$
    – Vijayendra
    May 21 '11 at 6:45
1
\$\begingroup\$

Recently Microsoft announced using silverlight to render unicode texts in XNA with its mango update for WP7. I think this might solve this issue. I think one just needs to render TextBlock control into XNA, which can handle unicode well.

\$\endgroup\$
1
\$\begingroup\$

I don't know if it supports all the fonts you're interested in, and it's rather old so there will certainly be some translation effort if you want to use it. But I figured I may as well post it in case it's useful:

http://blogs.msdn.com/b/manders/archive/2007/01/12/stroke-based-text-rendering-in-xna.aspx

\$\endgroup\$
1
  • \$\begingroup\$ Thanks so much Joel. Looks useful. But I think Mango Update for WP7 will resolve the issue. \$\endgroup\$
    – Vijayendra
    Jun 5 '11 at 9:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.