是否有一种简单的方法可以使默认的XNA方法SpriteBatch.DrawString
用?
符号替换不在spritefont中的字符?我可以使用扩展方法,但我不确定如何实现它,因为无法事先知道字符是否不在spritefont中。
答案 0 :(得分:1)
此功能是内置的。打开字体的.spritefont
文件,然后向下滚动到此处:
<!--
If you uncomment this line, the default character will be substituted if you draw
or measure text that contains characters which were not included in the font.
-->
<!-- <DefaultCharacter>*</DefaultCharacter> -->
取消注释该行并将字符替换为您想要的字符,如下所示:
<DefaultCharacter>?</DefaultCharacter>
您还可以通过在运行时修改SpriteFont.DefaultCharacter
属性来实现相同的效果。
如果需要,可以通过SpriteFont.Characters
属性获取字体中可用字符的列表。