for(int i = 0; i < nCount; ++ i) { POINT pt; pt.x = cx * i; pt.y = 0; imglist.Draw(&dcMem, i, pt, ILD_NORMAL); } // then you can save bitmap here SaveBitmapToFile(&bitmap, ......); dcMem.SelectObject(pOldBitmap); bitmap.DeleteObject();(以上代码未对函数的返回值进行校验,实际使用中要注意添加)
imglist.GetImageInfo(0, &imginfo);
int cx = imginfo.rcImage.right - imginfo.rcImage.left;
int cy = imginfo.rcImage.bottom - imginfo.rcImage.top;
int nWidth = cx * nCount;
int nHeight = cy;
CClientDC dc(this);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bitmap;
bitmap.CreateCompatibleBitmap(&dc, nWidth, nHeight);
CBitmap *pOldBitmap = (CBitmap *)dcMem.SelectObject(&bitmap);
dcMem.PatBlt(0, 0, nWidth, nHeight, WHITENESS);
for(int i = 0; i < nCount; ++ i)
{
POINT pt;
pt.x = cx * i;
pt.y = 0; imglist.Draw(&dcMem, i, pt, ILD_NORMAL);
} // then you can save bitmap here
SaveBitmapToFile(&bitmap, ......); dcMem.SelectObject(pOldBitmap);
bitmap.DeleteObject();(以上代码未对函数的返回值进行校验,实际使用中要注意添加)