摘要:MF平台支持的字体是专有格式,扩展名为tinyfnt,需要用专门的转化工具才能把windows平台上的字体转换为tinyfnt字体。在.Net Micro Framework SDK中提供了一个叫做TFConvert.exe的工具,我们可以用它在命令行下将PC机上的TrueType或者OpenType字体文件生成tinyfnt字体,供.Net Micro Framework的应用程序使用。使用TFconvert 工具进行字体转化,首先需要创建一个.fntdef 的文件其是字体的定义文件,其实它就是一个是TEXT文本文件,但是以.fntdef结尾的。本文阐述了在.Net Micro Framework 中以PC机上的字体显示汉字的步骤。
1.编辑.fntdef文件
先创建一个文本文档(.txt),这里我们以华文行楷字体为例,故取名为hwxk.txt。这个文件就是我们用来配置导出字体的文件,我们在其中添加以下内容:
AddFontToProcess C:"WINDOWS"Fonts"STXINGKA.TTF
SelectFont "WE:400,HE:20,FN:宋体"
ImportRange 32 126
ImportRange 19968 40869
配置文件中常用的命令如下:
1)、AddFontToProcess
格式:AddFontToProcess path
说明:填写中文字库的路径信息(字库源的路径,需要输入绝对路径),如果路径里有空格,一定用引号括起来,如示例所示:
AddFontToProcess C:"Windows"Fonts"Miramo.ttf
AddFontToProcess "C:""Program Files""Microsoft .NET Micro Framework""v2.0.3036""Tools""Fonts""TrueType""Miramo.ttf"
2)、SelectFont
格式:SelectFont "selectionstring"
说明:参数比较多,常用的就下面几个,余下的请看msdn的相关文章。
WE(Weight)字体的厚重度,0~1000,标准的是400,粗体为700
FN(Face Name) 字体名称,如果包含空格,要用引号括起来
HE(Height)字体大小(实际测试范围1~36)
WI(Width)字体宽度(实际测试范围1~12)
IT(Italic)设置字体的倾斜角度
UN(Underline)设置字体下面的下划线
注意 这个命令是Select Font,也就是说,从字库源中选择出指定参数的字体,.Net Mirco Framework与.Net精简框架集和.Net框架集不同,它的字体的大小、加粗、斜体等等参数不能在程序中任意改变,你导出的是什么样的字体,那就是什么字体,不能改变,一出生就决定命运。例如你对同一个字符串显示不同的大小,那么对应每一个大小,都需要你导出一个字体库。
3)、ImportRange
格式:ImportRange start end
说明:这个比较重要,是指从字库中导出字体的起始和结束位置,可以多个命令连用。
详细的介绍在msdn上有相关说明:ms-help://MS.VSCC.v80/MS.VSIPCC.v80/MSVS.PSDK/PSDK/PSDK_TF_Fntdef.htm
2. 打开命令行工具
在桌面上点击“开始”à“运行”à键入CMD,用cd指令导航到SDK的Tools文件夹下,利用dir命令,我们可以看到该目录的内容如图: