现在有一组象素点的数据,保存着各个点的坐标值和颜色属性值,需要把这些点画出来由于点比较多,所以调用画图函数很慢(大约画了几万个点,要近1秒的样子)
想请教哪位大侠知道,如何把这组数据转换成位图流传输的形式,直接在画图容器上显示呢??就像photoshop可以把几百万象素的图一下子显示出来一样

解决方案 »

  1.   

    先把这些点写入一个位图(Bitmap,这个类支持SetPixel这种操作),然后在Paint中,用DrawImage显示这幅图.
      

  2.   

    to 想请教哪位大侠知道,如何把这组数据转换成位图流传输的形式,直接在画图容器上显示呢??通过楼上的方法,先转化成bitmap,至于传输,需要通过MemoryStream转化成byte[],大致如下
    MemoryStream ms = new MemoryStream( );
    yourBitmap.Save( ms, ImageFormat.Bmp );
    ms.Flush();
    byte[] bData = ms.GetBuffer();
    ms.Close();
    //Send data using "bData"接收后,转换成MemoryStream,以及转换成Bitmap,可以如下:
    MemoryStream ms = new MemoryStream( bData );
    Bitmap bit = new Bitmap( ms );