久久99热66热这里只有精品,特黄特色的大片在线观看,亚洲日本三级在线观看,国产三级农村妇女在线,亚洲av毛片免费在线观看,哺乳叫自慰在线看,天天干美女av网

文本方式下圖形提示界面制作

時(shí)間:2023-05-01 07:39:35 計(jì)算機(jī)論文 我要投稿
  • 相關(guān)推薦

文本方式下圖形提示界面制作

在商品化的軟件中,有大量的提示信息界面以使用戶清楚軟件的狀態(tài)和運(yùn)行情況,使用漢字提示可以大大方便不懂西文提示的用戶。但如果少量的漢字提示在圖形方式下實(shí)現(xiàn),將使程序的設(shè)計(jì)復(fù)雜化,而且圖形方式比文本方式的實(shí)現(xiàn)要慢得多。本文使用EGA文本方式下漢字顯示原理,設(shè)計(jì)制做了一個(gè)微機(jī)駐留報(bào)警系統(tǒng)的封面提示信息,提示制做人、版權(quán)、公司徽標(biāo)等信息,實(shí)現(xiàn)了漢字,圖形,字符的彩色提示界面。下面討論實(shí)現(xiàn)的具體方法及原理。

一、漢字字模數(shù)據(jù)的提取

文本方式下的漢字顯示是通過用漢字字模改寫西文字符字模的方法實(shí)現(xiàn)的,所以應(yīng)首先獲得漢字字模數(shù)據(jù)。

各種漢字操作系統(tǒng)可以提供不同大小和字體的漢字字模,本文作為一個(gè)實(shí)例,從金山DOS的cclibj.dot的字庫中獲得所要顯示的楷體漢字字模的16×16點(diǎn)陣數(shù)據(jù)。

字庫的讀取用C語言實(shí)現(xiàn),具體方法如下。

(1)把需要顯示的漢字作為同字符同樣看待的字符串賦值于一個(gè)內(nèi)存變量f,漢字字符串的值在WPS的N命令下輸入,然后轉(zhuǎn)入C語言進(jìn)行編程。

(2)在C語言的環(huán)境中漢字字符串的值是國標(biāo)碼,字模的讀取,就是利用所要顯示的漢字國標(biāo)碼計(jì)算此漢字在字庫中對(duì)應(yīng)的字模的位置,然后讀取字庫中的32字節(jié)的字模數(shù)據(jù)至內(nèi)存緩沖區(qū)buf中。

C語言中漢字串的國標(biāo)碼與cclibj.dot字庫中一條字符記錄具有如下的對(duì)應(yīng)關(guān)系:

C1,C2是整型數(shù)輔助變量,ihi、ilo表示國標(biāo)碼的高兩位和低兩位整型數(shù)

。l為長整型數(shù),用于字模查找定位。

C1=(i-a0H) 94

C2=i-a0H c1-659

l=C2*32L

利用函數(shù):

lseek(fp, l, seek-set);

read (fp, buf,32);

找到字模開始位置,并讀入32字節(jié)字模數(shù)據(jù)到內(nèi)存緩沖區(qū)buf中。

(3)使用輸出函數(shù)的16進(jìn)制輸出格式,把緩沖區(qū)buf的內(nèi)容輸出并記錄下來。本例中獲得的“天驕”字模數(shù)據(jù)如下:

天:087ffc 1 010 1014fffe 10 280 280440 4 40820 101020 e o4

驕:8cfdfo 8 2048 204bfe 48 5048 887e8c4 8 81c 88e48844 88 148898 2 8

實(shí)現(xiàn)程序見附錄程序1。

二、圖形字模的設(shè)計(jì)

由于圖示沒有統(tǒng)一的標(biāo)準(zhǔn),所以顯示圖形的圖模數(shù)據(jù),用手工設(shè)計(jì)完成。本例中的圖形是公司的徽標(biāo),使用11個(gè)8×16的西文字符點(diǎn)陣表示圖形。11個(gè)西文字符點(diǎn)陣表示的圖模數(shù)據(jù)見程序中的row1-graph, row2-graph, row3-graph, 分別表示圖1中的第一行,第二行和第三行的圖模數(shù)據(jù)。

@@T5S08500.GIF;圖1@@

三、字模和圖模數(shù)據(jù)的寫入

1.可修改的字模表

EGA配有的顯示存儲(chǔ)器分成4個(gè)獨(dú)立區(qū)段,稱為4個(gè)頁面。在文本方式下頁面0和頁面1分放屏幕字符的ASCII碼和屬性字節(jié),而頁面2則用來存放字模表。EGA的字模表本來是存儲(chǔ)在ROM中的,但當(dāng)每次初始化文本方式時(shí),EGA的BIOS會(huì)把字模表拷貝到顯示存儲(chǔ)器的頁面2中,由于字模表已移到RAM中,用戶程序就能夠?qū)ψ帜_M(jìn)行存取和修改了。

2.字模表的結(jié)構(gòu)

EGA的字符寬度固定為8個(gè)像素,字符高度允許從1到32范圍取值,字模表是根據(jù)不間的字符集分塊存儲(chǔ)的,每個(gè)字符集內(nèi)則按字符的ASCII碼值從小到大的順序排列。每個(gè)字符固定占有32B,分別對(duì)應(yīng)字模從上到下的32個(gè)掃描行。但并非所有的掃描行全部使用,視不同的顯示模式使用其中一部分掃描行。

因此,16×16點(diǎn)陣的漢字字模占用2個(gè)西文字符,而圖形實(shí)現(xiàn)則視情況占用若干個(gè)西文字符。

3.字模的裝入

字模和圖模數(shù)據(jù)的寫入可通過BIOS INT 10H子功能11h來實(shí)現(xiàn)。

輸入?yún)?shù):AH=11H

AL=0

ES: BP=字模數(shù)據(jù)地址

CX=裝入字符個(gè)數(shù)(1~256)

DX=起始字符(0~255)

BL=字符集序號(hào)(0~3)

BH=字符高度(1~32)

其中,字模數(shù)據(jù)地址是程序中的字模數(shù)據(jù)區(qū)的首地址。而起始字符是字模數(shù)據(jù)寫入顯示緩沖區(qū)開始的位置。

四、漢字及圖形的彩色顯示

1.西文字符的顯示原理

輸出文本時(shí),頁面0存入要輸出字符的ASCII碼值,頁面1存入字符屬性。由頁面0的ASCII碼值索引到頁面2的字符發(fā)生器,再結(jié)合頁面1的屬

[1] [2] [3] 

【文本方式下圖形提示界面制作】相關(guān)文章:

主板診斷卡·什么是故障提示方式04-26

界面04-30

圖形負(fù)荷下的字音匹配加工05-01

《制作宣傳卡—設(shè)置文本框格式》教案04-25

網(wǎng)絡(luò)環(huán)境下評(píng)價(jià)方式的實(shí)踐與反思04-27

淺談新課程下數(shù)學(xué)教學(xué)方式04-29

新課標(biāo)理念下美術(shù)學(xué)習(xí)方式初探05-01

新理念下教師教學(xué)方式與學(xué)生學(xué)習(xí)方式的轉(zhuǎn)化04-30

求組合圖形面積的基本解法與思路(下)04-30

當(dāng)代學(xué)習(xí)方式下主體構(gòu)建的價(jià)值訴求04-29