一个背景加载一个图片,然后把加载的图片的颜色过滤掉 用SDK
HINSTANCE  hBmpInstance=hInst;  
HBITMAP  hImageBmp,hMaskBmp; //位图句柄  
BITMAP   Bmp; //BITMAP是结构体 
HDC hImageDc,hMakeDc;
 hMakeDc = CreateCompatibleDC(hdc); 
 hImageDc = CreateCompatibleDC(hdc); //创建兼容设备  
hImageBmp = (HBITMAP)LoadImage(hBmpInstance,MAKEINTRESOURCE(IDB_name),IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION);  
 GetObject(hImageBmp,sizeof(BITMAP),&Bmp); //获取位图尺寸  
SelectObject(hImageDc,hImageBmp); //将位图加到设备中 
hMaskBmp=CreateBitmap(Bmp.bmWidth,Bmp.bmHeight,1,1,NULL);//建立单色位图
SelectObject(hMakeDc,hMaskBmp);
SetBkColor(hImageDc,RGB(图片RGB背景RGB值));
/*为什么setBkcolor能过滤掉图片的背景
BitBlt(hMakeDc,0,0,Bmp.bmWidth,Bmp.bmHeight,hImageDc,0,0,SRCCOPY);
SetBkColor(hImageDc,RGB(0,0,0));
SetTextColor(hImageDc,RGB(255,255,255));
BitBlt(hImageDc,0,0,Bmp.bmWidth,Bmp.bmHeight,hMakeDc,0,0,SRCAND);
SetBkColor(hdc,RGB(255,255,255));
SetTextColor(hdc,RGB(0,0,0));
BitBlt(hdc,x,y,Bmp.bmWidth,Bmp.bmHeight,hMakeDc,0,0,SRCAND);
BitBlt(hdc,x,y,Bmp.bmWidth,Bmp.bmHeight,hImageDc,0,0,SRCPAINT);
DeleteObject(hImageBmp); //清除位图  
DeleteObject(hMaskBmp);
DeleteDC(hImageDc);
DeleteDC(hMakeDc);