?? 圖形涵數(shù).htm
字號(hào):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0049)http://paul.rutgers.edu/~junl/learning/TC/gra.htm -->
<HTML><HEAD><TITLE>gra</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content=wdg name=Author>
<META content="MSHTML 6.00.2462.0" name=GENERATOR></HEAD>
<BODY>
圖形函數(shù)
<P> Turbo C提供了非常豐富的圖形函數(shù), 所有圖形函數(shù)的原型均在graphics. h <BR>中,
本節(jié)主要介紹圖形模式的初始化、獨(dú)立圖形程序的建立、基本圖形功能、圖 <BR>形窗口以及圖形模式下的文本輸出等函數(shù)。另外, 使用圖形函數(shù)時(shí)要確保有顯示
<BR>器圖形驅(qū)動(dòng)程序*BGI, 同時(shí)將集成開發(fā)環(huán)境Options/Linker中的Graphics lib選 <BR>為on,
只有這樣才能保證正確使用圖形函數(shù)。 <BR> 1. 圖形模式的初始化 <BR>
不同的顯示器適配器有不同的圖形分辨率。即是同一顯示器適配器, 在不同 <BR>模式下也有不同分辨率。因此, 在屏幕作圖之前, 必須根據(jù)顯示器適配器種類將
<BR>顯示器設(shè)置成為某種圖形模式, 在未設(shè)置圖形模式之前, 微機(jī)系統(tǒng)默認(rèn)屏幕為文 <BR>本模式(80列, 25行字符模式),
此時(shí)所有圖形函數(shù)均不能工作。設(shè)置屏幕為圖形 <BR>模式, 可用下列圖形初始化函數(shù): <BR> void far
initgraph(int far *gdriver, int far *gmode, char *path); <BR>
其中g(shù)driver和gmode分別表示圖形驅(qū)動(dòng)器和模式, path是指圖形驅(qū)動(dòng)程序所
<BR>在的目錄路徑。有關(guān)圖形驅(qū)動(dòng)器、圖形模式的符號(hào)常數(shù)及對(duì)應(yīng)的分辨率見表2。 <BR> 圖形驅(qū)動(dòng)程序由Turbo
C出版商提供, 文件擴(kuò)展名為.BGI。根據(jù)不同的圖形 <BR>適配器有不同的圖形驅(qū)動(dòng)程序。例如對(duì)于EGA、 VGA 圖形適配器就調(diào)用驅(qū)動(dòng)程序
<BR>EGAVGA.BGI。
<P>
表2. 圖形驅(qū)動(dòng)器、模式的符號(hào)常數(shù)及數(shù)值 <BR>━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
<BR>
圖形驅(qū)動(dòng)器(gdriver) 圖形模式(gmode)
<BR> ───────────
─────────── 色調(diào) 分辨率 <BR>
符號(hào)常數(shù)
數(shù)值
符號(hào)常數(shù) 數(shù)值 <BR>━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
<BR> CGA
1
CGAC0
0 C0 320*200
<BR>
CGAC1
1 C1 320*200
<BR>
CGAC2
2 C2 320*200
<BR>
CGAC3
3 C3 320*200
<BR>
CGAHI
4 2色 640*200
<BR>─────────────────────────────────── <BR>
MCGA
2
MCGAC0
0 C0 320*200
<BR>
MCGAC1
1 C1 320*200
<BR>
MCGAC2
2 C2 320*200
<BR>
MCGAC3
3 C3 320*200
<BR>
MCGAMED
4 2色 640*200
<BR>
MCGAHI
5 2色 640*480
<BR>─────────────────────────────────── <BR>
EGA
3
EGALO
0 16色 640*200
<BR>
EGAHI
1 16色 640*350
<BR>─────────────────────────────────── <BR>
EGA64
4
EGA64LO
0 16色 640*200
<BR>
EGA64HI
1 4色 640*350
<BR>─────────────────────────────────── <BR>
EGAMON
5
EGAMONHI
0 2色 640*350
<BR>─────────────────────────────────── <BR>
IBM8514
6
IBM8514LO
0 256色 640*480
<BR>
IBM8514HI
1 256色 1024*768
<BR>─────────────────────────────────── <BR>
HERC
7
HERCMONOHI
0 2色 720*348
<BR>─────────────────────────────────── <BR>
ATT400
8
ATT400C0
0 C0 320*200
<BR>
ATT400C1
1 C1 320*200
<BR>
ATT400C2
2 C2 320*200
<BR>
ATT400C3
3 C3 320*200
<BR>
ATT400MED
4 2色 320*200
<BR>
ATT400HI
5 2色 320*200
<BR>─────────────────────────────────── <BR>
VGA
9
VGALO
0 16色 640*200
<BR>
VGAMED
1 16色 640*350
<BR>
VGAHI
2 16色 640*480
<BR>─────────────────────────────────── <BR>
PC3270
10
PC3270HI
0 2色 720*350
<BR>─────────────────────────────────── <BR>
DETECT
0 用于硬件測(cè)試
<BR>━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
<P> 例4. 使用圖形初始化函數(shù)設(shè)置VGA高分辨率圖形模式 <BR>
#include <graphics.h> <BR> int main()
<BR> {
<BR> int gdriver, gmode;
<BR> gdriver=VGA;
<BR> gmode=VGAHI;
<BR>
initgraph(&gdriver, &gmode, "c:\\tc");
<BR> bar3d(100, 100, 300,
250, 50, 1); /*畫一長(zhǎng)方體*/
<BR> getch();
<BR> closegraph();
<BR> return 0;
<BR> }
<P> 有時(shí)編程者并不知道所用的圖形顯示器適配器種類, 或者需要將編寫的程序 <BR>用于不同圖形驅(qū)動(dòng)器, Turbo
C提供了一個(gè)自動(dòng)檢測(cè)顯示器硬件的函數(shù), 其調(diào)用 <BR>格式為: <BR> void far
detectgraph(int *gdriver, *gmode); <BR>
其中g(shù)driver和gmode的意義與上面相同。 <BR> <BR> 例5. 自動(dòng)進(jìn)行硬件測(cè)試后進(jìn)行圖形初始化
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -