我用的bitblt函数来截图的,因为要做远程屏幕传输。看了很多网页和论文,都提到了将截图进行分块,在第一次发送全屏过去之后,以后就只需要发改变了的分块。我想问的是这个分块处理具体是怎么做的,有代码最好了,谢谢。还有就是说对分块进行差异比较的时候,用XOR,具体做法又是怎样的。。再次谢谢

解决方案 »

  1.   

    看你怎么实现了,可以参考vnc的代码..................
    其实就是哪里刷新了一下,就抓哪里的图........
      

  2.   

    分块可用zlib压缩,按格式分块只传差异块,解压
      

  3.   

    相同为零,相反为一,xor,然后把这个图跟原图在or一下就可以获得变化后的图片了eg;  第一幅  0011
         第二幅  1011xor 后       1000
    与二幅 or后为1000差异为 1,发送~
      

  4.   

    难道没有人做过啊。。还有就是bitmap在内存中是如何存放的呢,在程序中显示的时候需要位图文件头信息吗,还是只有数据部分。。