对于XNA的字体,除了之前的SpriteFont外还有一种是SpriteTextureFont,其实就是生成的字体bitmap图片,也就是说可以用bitmap类型的字库来当作XNA的字体集,这样就等于扩充了字体库,使手机里没有的字体库也可以使用。其使用方法和SpriteFont是一样的,都是以SpriteFont加载,然后通过DrawString方法画出来。
要使用图片字库,那首先就要制作字体图片。在http://www.daisy123.com/?page_id=427%20 ttf2bmp 工程就可以直接生成字体图片了,这个工程是开源的。
这样看起来似乎很好,使用中文看起来也就没有问题了!但事实上却没有这么完美,因为如果要生成两万多个汉字,图片会非常大,这就造成了无法加载,因为WP7对图片的限制是2048K,而只生成几千字的图片库就有十几M了。看来如果要用汉字还要费很大的力气来处理字库。
这是用工具生成的字体库图片文件:
实现:
将用工具生成的文字图片,加入到工程中。实现代码与spritefont相同.
本文作者:未知