軍事指揮系統(tǒng)中VxWorks下漢字顯示技術(shù)
2.4 點(diǎn)陣漢字存儲結(jié)構(gòu)
國家標(biāo)準(zhǔn)對漢字庫結(jié)構(gòu)做了統(tǒng)一規(guī)定:字庫分為94個區(qū),每個區(qū)有94個漢字,每個漢字有確定的區(qū)和位編碼,用兩個字節(jié)表示,第一個字節(jié)表示漢字所在的區(qū)號,第二個字節(jié)表示位號,即所謂的區(qū)位碼。每個漢字在字庫中以點(diǎn)陣字模形式存儲,一般采用16×16點(diǎn)陣、24×24點(diǎn)陣,每個點(diǎn)用二進(jìn)制位(0或1)表示,對應(yīng)在屏幕上顯示出來就是相應(yīng)的漢字。每個漢字都有惟一的區(qū)位碼,通過區(qū)位碼計(jì)算出漢字在字庫中的位置,從而確定漢字的字模。
點(diǎn)陣漢字字庫C語言文件有固定的結(jié)構(gòu),分為三個部分:點(diǎn)陣屬性表、點(diǎn)陣信息描述總表和點(diǎn)陣信息表。點(diǎn)陣屬性表用來描述點(diǎn)陣漢字的字符結(jié)構(gòu)和字模結(jié)構(gòu)參數(shù)的結(jié)構(gòu)體,包含參數(shù)有像素大小、字符名稱、字符家族名稱等,特別定義了指向點(diǎn)陣信息總表的數(shù)組指針,字體驅(qū)動程序利用這個指針尋找點(diǎn)陣信息總表。點(diǎn)陣信息描述總表 它是一個存放指向點(diǎn)陣信息表指針的動態(tài)數(shù)組,其元素個數(shù)取決于漢字點(diǎn)陣信息表的個數(shù)。
點(diǎn)陣信息表點(diǎn)陣信息表以數(shù)組的形式表示,主要用來存儲漢字的GB2312碼(西文是ASCII碼)和詳細(xì)點(diǎn)陣信息??梢允且粋€表也可以是若干個表。把漢字按 GB2312編碼的頁分類,構(gòu)建多個漢字分表,也可以把中西文裝在混合表里做成一個大表,西文字符被擴(kuò)展成雙字節(jié)存儲。
3 點(diǎn)陣漢字字庫實(shí)例
自己開發(fā)點(diǎn)陣存儲、點(diǎn)陣獲取、點(diǎn)陣顯示,改造windML的雙字節(jié)或單字節(jié)顯示函數(shù),使其能判斷漢字碼,一旦判斷出漢字碼,則使用自己開發(fā)的點(diǎn)陣獲取、點(diǎn)陣顯示等把漢字顯示出來。該方法對點(diǎn)陣的操作更加靈活,適合非標(biāo)準(zhǔn)的點(diǎn)陣算法,或者當(dāng)開發(fā)者已有成熟的點(diǎn)陣操作方法時,把該方法綁接到WindML上。
不必理會WindML雙字節(jié)編碼機(jī)制,這里需要的是一個漢字的點(diǎn)陣字庫,這個點(diǎn)陣字庫不必按照WindML的雙字節(jié)編碼機(jī)制進(jìn)行編碼,里面所存儲的只是漢字的點(diǎn)陣信息和區(qū)位碼信息,這個字庫可以通過從Windows中導(dǎo)出;由于不選用WindML的雙字節(jié)編碼機(jī)制,所以對于VxWorks中關(guān)于如何控制打點(diǎn)以及顯示點(diǎn)陣字體驅(qū)動,并不需要具體了解;更重要的是擁有更大的靈活性,只需把自己所寫的漢字顯示函數(shù)綁定到WindML上面即可。因此這里必須要求自己寫點(diǎn)陣的存儲、點(diǎn)陣顯示、漢字顯示函數(shù)。做起來比較簡單,只要求了解漢字編碼的基本知識,即漢字雙字節(jié)編碼中,高、低字節(jié)的最高位都是為‘1’,而西文字符編碼中最高位為‘0’,利用這點(diǎn)來判斷所要顯示的字符是漢字還是英文。
在設(shè)計(jì)開發(fā)過程中,在現(xiàn)有的西文字庫的基礎(chǔ)上進(jìn)行修改,添加相應(yīng)的字體參數(shù)和漢字的點(diǎn)陣信息,形成點(diǎn)陣漢字字庫文件uflhz12.c,uflhz16.c,uflhz24.c,以分別存儲12,16和24號宋體的字庫信息。這個過程用Windows編程來實(shí)現(xiàn)。
以下是16號宋體字庫文件中的點(diǎn)陣信息表:
字庫文件的最后定義了點(diǎn)陣屬性表,該表規(guī)定了整個點(diǎn)陣字庫的屬性以及字模和間距,并定義點(diǎn)陣指針。
4 結(jié) 語
在VxWorks嵌入式平臺下采用點(diǎn)陣漢字顯示技術(shù),使得戰(zhàn)場信息、態(tài)勢、指令等獲得了中文顯示。最終使設(shè)計(jì)開發(fā)的軍事指揮系統(tǒng)不僅具有良好的可靠性和卓越的實(shí)時性,同時具有直觀而方便的中文平臺以及友好的交互能力,大大提升了整體作戰(zhàn)效能。
評論