关于 getpixel 函数如何获得背景色
#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只是获得这些描过的点的颜色,没有描过的点的颜色只是获得的黑色,而不是我们的背景色。