我是monogame的新手,我正在尝试制作一个.spritefont
文件以便用我选择的字体绘制字符串。
带有英文字符的字符串可以在屏幕上很好地显示,但我希望绘制多种语言的字符串,例如日语和中文。
因此,我尝试在多语言字体“Microsoft JhengHei”中加载所有字符。
字体的第一个字符是!(U+0021)
,最后一个字符是○(U+FFEE)
.
但是当我试图编译程序时,编译器给了我一个错误:
.../Content/MyFont.spritefont : 错误 : Importer 'FontDescriptionImporter' 出现意外失败!
System.Reflection.TargetInvocationException:调用的目标已引发异常。---> System.ArgumentException: CharacterRegion.End 必须大于 CharacterRegion.Start
在 Microsoft.Xna.Framework.Content.Pipeline.Graphics.FontDescription.set_CharacterRegions(CharacterRegion[] 值)
当我将其更改为○
时忮
,MSBuild
卡住并需要永远继续内容。
代码MyFont.spritefont
如下:
<?xml version="1.0" encoding="utf-8"?>
<XnaContent xmlns:Graphics="Microsoft.Xna.Framework.Content.Pipeline.Graphics">
<Asset Type="Graphics:FontDescription">
<FontName>Microsoft JhengHei</FontName>
<Size>14</Size>
<Spacing>0</Spacing>
<UseKerning>true</UseKerning>
<Style>Regular</Style>
<CharacterRegions>
<CharacterRegion>
<Start>!</Start>
<End>○</End>
</CharacterRegion>
</CharacterRegions>
</Asset>
</XnaContent>
我搜索了几天的解决方案,但徒劳无功,感谢任何帮助。