Warning: Languages with complex layout rules won't work with XNA's spritefonts at all! Two examples of this is Thai (can't render compound characters) and Arabic (the text is left-to-right and not tied together). Miraculously Korean is possible to make sprite fonts of despite its layout rules, since every syllable is a unique unicode entry.
Why is this necessary?
Because XNA uses spritefonts, and spritefonts suck. Some written languages, like Chinese, Korean and Japanese, consists of a huge amount of glyphs. This becomes a problem in sprite font based rendering, because a single sprite font can't hold all thousands upon thousands of glyphs (at least not the XNA spritefont).
The solution for this is to create custom spritefonts using only the characters present in the translation.
Normally only a small fraction is used when translating, and it's possible to create spritefonts if the number of symbols aren't sky high. I don't know the actual number, but 1000 glyphs should be no problem, for example.
I've provided some tools that should help with both calculating the glyphs used, as well as creating the sprite fonts. All these tools have been included in the Fonts Tab inside the Translation Suite.
The biggest hurdle is probably installing the prerequisites for building XNA assets, which you'll need to do. You'll never actually use any of these programs, but the simple Content Builder provided in the translation suite will use parts of them to create the fonts.
First, you'll need any version of Visual Studio, so if you don't have one installed just download the free community version.
Then you must install the XNA Game Studio stuff. Since the old installer doesn't work well with newer machines, follow steps 1-3 in this guide. You can stop at step 4 since we're not actually going to use Visual Studio for anything!
The Fonts Tab:

1) These buttons lead to the same links you see above, letting you download the installers for Visual Studio and XNA Game Studio
2) The font name of your font, if you have one you think will be better (it's actually super hard finding fonts that work well at small sizes, but feel free to try, and please share if you find a great, open font)
3) This is the keyword for the font inside the game, also known as subfont! You can see what subfont a specific string in the Misc Text Translator. All strings with that subfont will look the same.
4) Here you can adjust certain things about the font, like changing its size, spacing and making it bold
5) These buttons will do all the tedious work for you after you're done with the settings
In order to make the game render your translation, you must compile every font in the list. This will make the game render text with that font if there's a translation available for it.
All non-translated texts will render with the default English font, so you don't need to worry about that.
To create a custom font for your translation, first press Compile Regions, then Create Spritefont, and last Compile Spritefont. This should open up a separate program that will hopefully manage to compile your new font! After the fonts are compiled, you should be able to open up the Dialogue and Misc Text tools again and have the translation being rendered correctly using the game engine.
Don't hesitate to reply to this post if you're having trouble with this, as it's pretty complicated.
Why is this necessary?
Because XNA uses spritefonts, and spritefonts suck. Some written languages, like Chinese, Korean and Japanese, consists of a huge amount of glyphs. This becomes a problem in sprite font based rendering, because a single sprite font can't hold all thousands upon thousands of glyphs (at least not the XNA spritefont).
The solution for this is to create custom spritefonts using only the characters present in the translation.
Normally only a small fraction is used when translating, and it's possible to create spritefonts if the number of symbols aren't sky high. I don't know the actual number, but 1000 glyphs should be no problem, for example.
I've provided some tools that should help with both calculating the glyphs used, as well as creating the sprite fonts. All these tools have been included in the Fonts Tab inside the Translation Suite.
The biggest hurdle is probably installing the prerequisites for building XNA assets, which you'll need to do. You'll never actually use any of these programs, but the simple Content Builder provided in the translation suite will use parts of them to create the fonts.
First, you'll need any version of Visual Studio, so if you don't have one installed just download the free community version.
Then you must install the XNA Game Studio stuff. Since the old installer doesn't work well with newer machines, follow steps 1-3 in this guide. You can stop at step 4 since we're not actually going to use Visual Studio for anything!
The Fonts Tab:

1) These buttons lead to the same links you see above, letting you download the installers for Visual Studio and XNA Game Studio
2) The font name of your font, if you have one you think will be better (it's actually super hard finding fonts that work well at small sizes, but feel free to try, and please share if you find a great, open font)
3) This is the keyword for the font inside the game, also known as subfont! You can see what subfont a specific string in the Misc Text Translator. All strings with that subfont will look the same.
4) Here you can adjust certain things about the font, like changing its size, spacing and making it bold
5) These buttons will do all the tedious work for you after you're done with the settings
In order to make the game render your translation, you must compile every font in the list. This will make the game render text with that font if there's a translation available for it.
All non-translated texts will render with the default English font, so you don't need to worry about that.
To create a custom font for your translation, first press Compile Regions, then Create Spritefont, and last Compile Spritefont. This should open up a separate program that will hopefully manage to compile your new font! After the fonts are compiled, you should be able to open up the Dialogue and Misc Text tools again and have the translation being rendered correctly using the game engine.
Don't hesitate to reply to this post if you're having trouble with this, as it's pretty complicated.
Last edited: