在.Net Micro Framework中顯示漢字(上)
1.編輯.fntdef文件
先創(chuàng)建一個(gè)文本文檔(.txt),這里我們以華文行楷字體為例,故取名為hwxk.txt。這個(gè)文件就是我們用來(lái)配置導(dǎo)出字體的文件,我們?cè)谄渲刑砑右韵聝?nèi)容:
◆AddFontToProcess C:"WINDOWS"Fonts"STXINGKA.TTF
◆SelectFont "WE:400,HE:20,FN:宋體"
◆ImportRange 32 126
◆ImportRange 19968 40869
配置文件中常用的命令如下:
1)AddFontToProcess
格式:AddFontToProcess path
說明:填寫中文字庫(kù)的路徑信息(字庫(kù)源的路徑,需要輸入絕對(duì)路徑),如果路徑里有空格,一定用引號(hào)括起來(lái),如示例所示:
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"
說明:參數(shù)比較多,常用的就下面幾個(gè),余下的請(qǐng)看msdn的相關(guān)文章。
WE(Weight)字體的厚重度,0~1000,標(biāo)準(zhǔn)的是400,粗體為700
FN(Face Name) 字體名稱,如果包含空格,要用引號(hào)括起來(lái)
HE(Height)字體大小(實(shí)際測(cè)試范圍1~36)
WI(Width)字體寬度(實(shí)際測(cè)試范圍1~12)
IT(Italic)設(shè)置字體的傾斜角度
UN(Underline)設(shè)置字體下面的下劃線
注意 這個(gè)命令是Select Font,也就是說,從字庫(kù)源中選擇出指定參數(shù)的字體,.Net Mirco Framework與.Net精簡(jiǎn)框架集和.Net框架集不同,它的字體的大小、加粗、斜體等等參數(shù)不能在程序中任意改變,你導(dǎo)出的是什么樣的字體,那就是什么字體,不能改變,一出生就決定命運(yùn)。例如你對(duì)同一個(gè)字符串顯示不同的大小,那么對(duì)應(yīng)每一個(gè)大小,都需要你導(dǎo)出一個(gè)字體庫(kù)。
3)ImportRange
格式:ImportRange start end
說明:這個(gè)比較重要,是指從字庫(kù)中導(dǎo)出字體的起始和結(jié)束位置,可以多個(gè)命令連用。
詳細(xì)的介紹在msdn上有相關(guān)說明:ms-help://MS.VSCC.v80/MS.VSIPCC.v80/MSVS.PSDK/PSDK/PSDK_TF_Fntdef.htm
2. 打開命令行工具
在桌面上點(diǎn)擊“開始”à“運(yùn)行”à鍵入CMD,用cd指令導(dǎo)航到SDK的Tools文件夾下,利用dir命令,我們可以看到該目錄的內(nèi)容如圖:
3.使用TFConvert工具
我們假設(shè)在c盤下已經(jīng)創(chuàng)建了samplefonts的目錄,把TFconvert.exe 和hwxk.ttf (以華文行楷作為例子)復(fù)制到該目錄下,同時(shí)把剛才創(chuàng)建的.fntdef 如hwxk.fntdef 也復(fù)制到該目錄下。建議大家在windows xp下進(jìn)行這個(gè)工具的使用。
◆TFconvert 使用方法: TFconvert < input file> < output file>
在dos 命令行下 切換到samplesfont 目錄下,輸入:TFconvert c:"samplefonts"hwxk.fntdef c:"samplefonts"hwxk.tinyfnt回車即可,這樣在該目錄下就有hwxk.tinyfnt 文件生成。當(dāng)然,這里的目錄也可以是你自定義的。
4.測(cè)試
在Visual Studio中新建一個(gè)Windows Application。首先雙擊Resources.resx,在出現(xiàn)的Tab頁(yè)中,我們將String1的內(nèi)容由“Hello World”改為你要顯示的漢語(yǔ),然后點(diǎn)擊左上角的String旁邊的小箭頭,選擇Files:
然后點(diǎn)擊旁邊的“Add Resouces”右邊的小箭頭,選擇“Add Existing File”,然后瀏覽到我們之前生成的tinyfnt所在文件目錄下。選擇hwxk.tinyfnt,將它添加到資源文件中。
然后我們打開Program.cs,默認(rèn)生成的代碼中將:
- text.Font = Resources.GetFont(Resources.FontResources.small);
改為:
- text.Font = Resources.GetFont(Resources.FontResources.hwxk);
【編輯推薦】