c语言图形化函数 c图形化编程( 七 )


void far setvisualpage(int pagenum);
这两个函数只用于EGA,VGA 以及HERCULES图形适配器 。setctivepage() 函数
是为图形输出选择激活页 。所谓激活页是指后续图形的输出被写到函数选定的
pagenum页面, 该页面并不一定可见 。setvisualpage()函数才使pagenum 所指定
的页面变成可见页 。页面从0开始(Turbo C默认页) 。如果先用setactivepage()
函数在不同页面上画出一幅幅图像,再用setvisualpage()函数交替显示, 就可以
实现一些动画的效果 。
void far getimage(int xl,int yl, int x2,int y2, void far *mapbuf);
void far putimge(int x,int,y,void * mapbuf, int op);
unsined far imagesize(int xl,int yl,int x2,int y2);
这三个函数用于将屏幕上的图像复制到内存,然后再将内存中的图像送回到
屏幕上 。首先通过函数imagesize()测试要保存左上角为(xl,yl), 右上角为(x2,
y2)的图形屏幕区域内的全部内容需多少个字节, 然后再给mapbuf 分配一个所测
数字节内存空间的指针 。通过调用getimage()函数就可将该区域内的图像保存在
内存中, 需要时可用putimage()函数将该图像输出到左上角为点(x, y)的位置上,
其中getimage()函数中的参数op规定如何释放内存中图像 。
对于imagesize()函数, 只能返回字节数小于64K字节的图像区域, 否则将会
出错, 出错时返回-1 。
本节介绍的函数在图像动画处理、菜单设计技巧中非常有用 。
例13:下面程序模拟两个小球动态碰撞过程 。
7. 图形模式下的文本输出
在图形模式下, 只能用标准输出函数, 如printf(), puts(), putchar() 函
数输出文本到屏幕 。除此之外, 其它输出函数(如窗口输出函数)不能使用, 即是
可以输出的标准函数, 也只以前景色为白色, 按80列, 25行的文本方式输出 。
Turbo C2.0也提供了一些专门用于在图形显示模式下的文本输出函数 。下面
将分别进行介绍 。
一、文本输出函数
void far outtext(char far *textstring);
该函数输出字符串指针textstring所指的文本在现行位置 。
void far outtextxy(int x, int y, char far *textstring);
该函数输出字符串指针textstring所指的文本在规定的(x, y)位置 。其中x
和y为象元坐标 。
说明:
这两个函数都是输出字符串, 但经常会遇到输出数值或其它类型的数据,
此时就必须使用格式化输出函数sprintf() 。
sprintf()函数的调用格式为:
int sprintf(char *str, char *format, variable-list);
它与printf()函数不同之处是将按格式化规定的内容写入str 指向的字符串
中, 返回值等于写入的字符个数 。
例如:
sprintf(s, "your TOEFL score is %d", mark);
这里s应是字符串指针或数组, mark为整型变量 。
C语言中的图形函数有哪些一) 像素函数
putpiel() 画像素点函数
getpixel()返回像素色函数
(二) 直线和线型函数
line() 画线函数
lineto() 画线函数
linerel() 相对画线函数
setlinestyle() 设置线型函数
getlinesettings() 获取线型设置函数
setwritemode() 设置画线模式函数
(三)、多边形函数
rectangle() 画矩形函数
bar() 画条函数
bar3d() 画条块函数
drawpoly() 画多边形函数
(四)、 圆、弧和曲线函数
getaspectratio()获取纵横比函数
circle()画圆函数
arc() 画圆弧函数
ellipse()画椭圆弧函数
fillellipse() 画椭圆区函数
pieslice() 画扇区函数
sector() 画椭圆扇区函数
getarccoords()获取圆弧坐标函数
(五)、 填充函数
setfillstyle() 设置填充图样和颜色函数
setfillpattern() 设置用户图样函数

推荐阅读