郁闷了好几天,如何实现windows自带的画图里放大8倍且有网格情况下那种画圆画线的效果?

解决方案 »

  1.   


    他那个应该是直接通过StretchBlt放大贴上去的实际上内容是画在一个Bitmap里面
      

  2.   

    那就是说画线,画圆过程也是不停地从bitbmp里StretchBlt放大贴上去的,这样的话可能会造成卡的现象,但windows的画图里放大后画线,画圆的过程都是很流畅的呀
      

  3.   

    GDI画这些东西不会卡的用Blt很快
      

  4.   

    你可以用以下代码试一下在位图资源里面加一个IDB_BITMAP1的位置,在上面画几笔 CDC *pDC = GetDC(); CBitmap bmp;
    bmp.LoadBitmap(IDB_BITMAP1); CDC memDC;
    memDC.CreateCompatibleDC(pDC);
    memDC.SelectObject(&bmp); pDC->StretchBlt(0, 0, 480, 480, &memDC, 0, 0, 48, 48, SRCCOPY); ReleaseDC(pDC);
      

  5.   

    使用StretchBlt一次肯定不会卡,但是我要的效果是在画线时按下鼠标左键然后移动鼠标时这个线条也会是一格一格的这个过程的这种效果
      

  6.   

    谢谢了,试了,不卡,但有时占用的CPU达到50%,请问有改善方法吗?
      

  7.   

    我以前实现过类似photoshop套锁工具的功能,可以放大缩小操作,不显卡
      

  8.   


    jay99(不高兴) 兄:
        可以给点提示或提供学习的例子吗?谢谢!