注册 登录
编程论坛 C图形专区

关于 getpixel 函数如何获得背景色

cordier 发布于 2011-12-20 12:11, 1035 次点击
#include <mem.h>
#include <conio.h>
#include <stdio.h>
#include <Graphics.h>

void main(void)
{
 int a00,a01;
 int gdriver=DETECT,gmode;

 initgraph(&gdriver,&gmode,"");
 setbkcolor(GREEN);     /*设置背景色,查看Graphics.h可知,GREEN对应于2*/
 cleardevice();         /*用背景色刷屏*/
 
 putpixel(0,0,RED);        /*查看Graphics.h可知,RED对应于4*/
 a00=getpixel(0,0);        /*这个得到的是红色*/
 
 a01=getpixel(0,1);        /*这个点我们没有操作过,它用的是背景色*/
 
 closegraph();
 
 printf("a00=%d\na01=%d\n",a00,a01);
 /*得到的结果是:
  a00=4        这个对应于红色,就是我们设置的putpixel颜色
  a01=0        这个得到的是白色,事实上我们已经用cleardevice函数用GREEN进行刷屏
 */
 getch();
}
 
我想问一下,怎么获得我们所看到的颜色。即包括背景色。
我们用背景色刷屏,然后我们通过一些作图函数,在上面描了一些点,
而getpixel只是获得这些描过的点的颜色,没有描过的点的颜色只是获得的黑色,而不是我们的背景色。
1 回复
#2
cordier2012-01-13 13:29
真心求救.
1