国产精品一久久香蕉产线看-国产精品一区在线播放-国产精品自线在线播放-国产毛片久久国产-一级视频在线-一级视频在线观看免费

Turbo C在圖形狀態(tài)下快速顯示彩色漢字的方法

時(shí)間:2022-06-28 14:07:10 圖形圖像/多媒體 我要投稿
  • 相關(guān)推薦

關(guān)于Turbo C在圖形狀態(tài)下快速顯示彩色漢字的方法

  在用Turbo C提供的圖形函數(shù)進(jìn)行作圖時(shí),為了使屏幕顯示更加直觀明了,常常需要在圖形顯示的同時(shí),顯示必要的漢字說(shuō)明,Turbo C在圖形狀態(tài)下快速顯示彩色漢字的方法。這時(shí)Turbo C提供的一些函數(shù)就不能用了。

  在漢字操作系統(tǒng)中,有一個(gè)16×16點(diǎn)陣的漢字庫(kù),主要用于屏幕顯示。字庫(kù)中的漢字按16×16點(diǎn)陣模式存儲(chǔ),即每個(gè)漢字相當(dāng)于16×16=256個(gè)點(diǎn)組成。占用16×2=32個(gè)連續(xù)的字節(jié)單元。字節(jié)的每一位(bit)表示一個(gè)點(diǎn)的屬性:1表示亮點(diǎn),0表示暗點(diǎn)。連續(xù)的兩個(gè)字節(jié)表示該漢字字模的一行。32個(gè)字節(jié)的排列順序如圖:

  @@T5S08100.GIF;圖1@@

  計(jì)算機(jī)對(duì)西文字符采用一個(gè)字節(jié)表示,我國(guó)規(guī)定漢字用內(nèi)碼(2個(gè)字節(jié))表示。為了保證中西文兼容,也就是說(shuō),漢字系統(tǒng)的內(nèi)碼必須同時(shí)允許ASCII碼和漢字的同時(shí)使用,而兩者之間不能發(fā)生沖突。目前規(guī)定每個(gè)字節(jié)只用七位,若兩個(gè)字節(jié)的最高位均為1,則該字符為漢字。

  國(guó)標(biāo)對(duì)漢字庫(kù)的結(jié)構(gòu)作了統(tǒng)一的規(guī)定:即將漢字庫(kù)分為若干個(gè)區(qū),每個(gè)區(qū)有94個(gè)漢字。

  每一個(gè)漢字在字庫(kù)中有一個(gè)固定的區(qū)和位,即每一個(gè)漢字有一個(gè)區(qū)位碼。知道了區(qū)位碼也就相當(dāng)于知道了漢字在字庫(kù)中的位置。由于漢字的內(nèi)碼與區(qū)位碼有一定的關(guān)系,所以,只要通過(guò)內(nèi)碼就可以得到區(qū)位碼,從而也就得到了漢字的字模。

  設(shè)一個(gè)漢字的內(nèi)碼為ddff,則此漢字的區(qū)碼為dd-161;位碼為ff-161;該漢字字模的第一個(gè)字節(jié)在字庫(kù)中的位置是(94×區(qū)碼 位碼)×32。這時(shí)只要連續(xù)的讀出32個(gè)字節(jié),就可以得到該漢字的字模。

  有些文章和書籍采用寫點(diǎn)的方式來(lái)處理這32個(gè)字節(jié)。即某位為1,則寫點(diǎn),某位為0,則不寫點(diǎn)。如果這樣處理,則每個(gè)漢字需循環(huán)256次,寫256個(gè)點(diǎn),字?jǐn)?shù)越多,則會(huì)顯得很慢。

  Turbo C提供了這樣兩個(gè)函數(shù):

  setlinestyle(int linestyle,unsignedupattern,int thickness);

  line(int x0,int y0,int x1,int y1);

  setlinestyle函數(shù)為設(shè)置線型函數(shù),當(dāng)linestyle取USERBIT-LINE且thickness取NORM-WIDTH時(shí),其后的line函數(shù)就會(huì)按upattern的16位二進(jìn)制數(shù)畫一點(diǎn)寬的線,計(jì)算機(jī)論文《Turbo C在圖形狀態(tài)下快速顯示彩色漢字的方法》。upattern的每一位代表一個(gè)象元,如果那位為1,則該象元打開,否則該象元關(guān)閉。

  我們?cè)谧x字模的時(shí)候可以一次讀2個(gè)字節(jié),形成一個(gè)16位的二進(jìn)制數(shù),把此二進(jìn)制數(shù)設(shè)為upattern,然后畫線。這樣只需循環(huán)16次就可寫完一個(gè)漢字。速度得到很大的提高。尤其在字?jǐn)?shù)較多時(shí),更體現(xiàn)出此方法的優(yōu)勢(shì)。

  以下為用畫線的方法在西文狀態(tài)下顯示漢字的函數(shù),在Turbo C 1.0、DOS6.0、兼容386機(jī)上運(yùn)行通過(guò)。

  #include

  #include

  #include

  FILE *stream; //設(shè) stream為全程變量//

  void open-file

  {//打開漢字庫(kù)函數(shù),使用的漢字庫(kù)為UCDOS的16點(diǎn)陣字庫(kù):HZK16//

  if((stream=fopen("hzk16","rb"))==NULL)

  { printf("Can't Open File HZK16"); exit(1);}

  }

  void close-file

  {//關(guān)閉漢字庫(kù)函數(shù)//

  fclose(stream); return;

  }

  void write16(unsigned char *word,int x,int y,int wd,int col)

  {//word為所要顯示的漢字串,x,y為要顯示漢字的起始坐標(biāo),wd為兩個(gè)漢字//

  //之間的間隔,col為要顯示漢字的顏色.//

  register int k,i;

  unsigned char cw[33];

  char c[2];

  unsigned long int qu-ma,wei-ma;

  setcolor(col);settextstyle(0,HORIZ-DIR,1);

  for(k=0;word[k]!='/0';k =2)

【Turbo C在圖形狀態(tài)下快速顯示彩色漢字的方法】相關(guān)文章:

諾基亞c6關(guān)機(jī)狀態(tài)下硬格07-12

《彩色圖形找朋友》教學(xué)設(shè)計(jì)06-28

平移的圖形剪紙方法03-21

彩色圖形找朋友教案設(shè)計(jì)06-28

如何快速搶到華為榮耀3C07-11

青少年快速的減肥方法06-28

系鞋帶的快速方法圖解06-29

快速閱讀書籍的方法06-28

衣柜快速除甲醛方法06-29

快速化妝方法介紹07-04

主站蜘蛛池模板: 国产成人精品视频免费大全 | 色聚网久久综合 | 久久综合狠狠综合久久 | 国产亚洲精品hd网站 | 黄色免费在线视频 | 色爽视频| 污污视频在线播放 | 91精品国产乱码久久久久久 | 欧美日韩国产最新一区二区 | 在线观看免费国产视频 | 成人欧美一区二区三区视频xxx | 亚洲天堂精品在线观看 | 99精品视频在线视频免费观看 | 日韩一级黄色片 | 狠狠综合| 中文字幕伦伦在线中文字 | 婷婷人人爽人人做人人添 | 亚洲欧洲日本精品 | 国产免费高清在线精品一区 | 7m视频在线观看高清国产7m | 免费黄色欧美视频 | 亚洲综合无码一区二区 | 国产在线欧美日韩一区二区 | 日韩亚洲国产激情在线观看 | 国产精品久久久久久久9999 | 色婷婷婷丁香亚洲综合不卡 | 亚洲不卡一区二区三区 | 久热re这里只有精品视频 | 天天爽天天爽 | 天天爱天天做久久天天狠狼 | 亚洲伊人色一综合网 | 天天曰天天 | 你懂得在线观看 | 婷婷网五月天天综合天天爱 | 永久免费观看午夜视频在线 | 天天舔天天操 | 欧美色淫网站免费观看 | 国产性片在线观看 | 精品久久久久久中文字幕一区 | 天天透天天操 | 成人激情视频网站 |