全文预览

bmp的特效处理

上传者:梦&殇 |  格式:doc  |  页数:17 |  大小:75KB

文档介绍
;//定义一个白色的刷子;РCbrush *oldbrush=pDC->SelectObject(&brush);Рfor(int i=0;i < lpDIBHdr->biHeight ;i++)Р{//每次循环将目标区域中的0到i行刷成白色;РpDC->Rectangle(0,0,lpDIBHdr->biWidth,lpDIBHdr->biHeight);РDelayTime(50);Р}Р.......................................Р Р 2. 百页窗效果Р 所谓百页窗显示效果,就如同关闭和开启百页窗一样,图像被分为一条条或一列列地分别显示或清除掉,根据显示时以行或列为单位可以将该效果分为垂直或水平两种方式。以垂直百页窗为例来说明如何实现这种特效显示。实现垂直百页窗显示时,需要将图像垂直等分为n部分由上向下扫描显示,其中每一部分包括m个条、这个n可以根据具体应用时的需要来决定、m既为图像的高度除n。扫描显示时,依照差值进行扫描显示,即第k次显示k-1、k*m-1、...k*n -1条扫描线。同样,垂直百页窗清除的实现与垂直百页窗的显示相似,不同的是将绘制位图换成画矩形而已。在下面的例子中,我将图像的分成8份。Р.......................................Рint m=8;Рint n=lpDIBHdr->biHeight/m;//图像的高度能够整除8;Рfor(int l=1;l<=m;l++)Рfor(int k=0;kР{ //每次循环依次显示图像中的k-1、k*m-1、...k*n-1行;РStretchDIBits (hDC,0,4*k+l-1,lpDIBHdr->biWidth,1,Р0, lpDIBHdr->biHeight-4*k-l+1,lpDIBHdr->biWidth,1,РlpDI

收藏

分享

举报
下载此文档