一张100*100的单色位图,现在想用4张25*25的单色位图来代替它,如何实现。是不是要先弄出张100*100的,然后图形分割成4块。还是直接弄出4张。思路和例子皆可,请大家指点

解决方案 »

  1.   

    DDB OR DIB ?
    你只要知道了位图格式,这个问题其实很简单的。
      

  2.   

    如果你的位图是bmp那就是用GDI解决,先把整张位图载入内存DC, 使用bitblt函数向窗口粘贴所要显示的部分,这个很容易搞的如果不是bmp,那最好还是用GDI+ 去解决,使用方式类似于GDI
      

  3.   

    这个位图是创建出来的,之后就bitblt。每次缩放的时候需要重新生成位图,我这里最大的缩放系数为120倍,也就是100*100的位图会变成12000*12000,所以重新生成的时候会很卡(虽然只卡一会)。所以考虑能不能将位图分为几块,每次缩放的时候只放大其中一块。
      

  4.   

    用BOOL BitBlt(
      __in  HDC hdcDest,
      __in  int nXDest,
      __in  int nYDest,
      __in  int nWidth,
      __in  int nHeight,
      __in  HDC hdcSrc,
      __in  int nXSrc,
      __in  int nYSrc,
      __in  DWORD dwRop
    );指定src的左上坐标和长度,复制到目标dc就可以了
      

  5.   

    应该要用到这个,绘图到bitmap的时候该怎么绘制多张图呢,有没有实例,或者有这方面的书,给个书名也行呢