|
发表于 2004-5-28 20:19:00
|
显示全部楼层
Re:关于镂空图制作
这个我以前试过.有很久了,我记不得了。大概程序是这样的.你可以试试.我只写出关键部分的代码.
int height=153,width=104;//如果只给出左边人物的话宽度208/2=104
CBitmap *man;
CDC *mdc,*mdc1;
man=new CBitmap;
mdc=new CDC;
mdc1=new CDC;
CClientDC dc(this);
RECT rect;
GetClientRect(&rect);
VERIFY(mdc1->CreateCompatibleDC(&dc));
man->m_hObject=(HBITMAP): oadImage(NULL,"man.bmp",IMAGE_BITMAP,104,153,LR_LOADFROMFILE);
mdc->SelectObject(man);
mdc1->BitBlt(0,0,width,height,mdc,104,0,SRCAND);
mdc1->BitBlt(0,0,width,height,mdc,0,0,SRCPAINT);
dc.BitBlt(0,0,rect.right,rect.bottom,mdc1,0,0,SRCCOPY);
释放代码我就不写了.
|
|