向打印机打印图像,代码如下,结果是空白的,求教,//pDC: pointer to the DC of a Printer:
...........
   HICON hIcon = AfxGetApp()->LoadIcon( IDR_AUTOCLTYPE  ) ;
   pDC->DrawIcon ( nOx, nOy, hIcon ); // load BITMAP from our resources
   CBitmap bmp;
   if (bmp.LoadBitmap(IDB_STATEICONS))
   {
      // Get the size of the bitmap
      BITMAP bmpInfo;
      bmp.GetBitmap(&bmpInfo);
      CDC dcMemory;
      dcMemory.CreateCompatibleDC(pDC);      CBitmap* pOldBitmap = dcMemory.SelectObject(&bmp);      pDC->BitBlt(nOx, nOy, bmpInfo.bmWidth, bmpInfo.bmHeight, &dcMemory, 
         0, 0, SRCCOPY);
      dcMemory.SelectObject(pOldBitmap);
   }
.....

解决方案 »

  1.   

    如果是基于cview的视类
    写在onpaint函数里试试
      

  2.   

    试试OrchidPrinter
    download from www.orient-orchid.com
      

  3.   

    谢谢各位老大,不过这段码在window 窗口中是可以正常显示的,就是打印不出来
      

  4.   

    谢谢各位老大,不过这段码在window下显示是没问题的,就是打印不出,相伴的文本、线条等都是正常的
      

  5.   

    用cdc::GetDeviceCaps(RASTERCAPS)=RC_BITBLT,RC_STRETCHBLT 设备才支持图向打印