唉,自己的疏忽啊!一个参数的问题。改正后,Image的Copy正常的了。还是代码如下:

private void ImageCopy()
 {
  if(souImgData == null || imgData == null)
   return;
  int sx = souCanvas.getSouImageX();
  int sy = souCanvas.getSouImageY();

///***  就是下面这个参数不对啊

//以前的是int dx = x_id; 粗心啊,自己
  int dx = x_id*width;

//*******
  int dy = y_id*height;
  int[] pixels = new int[width];
  for (int i = 0; i < height; i++) {
   souImgData.getPixels(sx, sy++, width, pixels, 0);
   imgData.setPixels(dx, dy++, width, pixels, 0);
  }
  if(image !=null)
   image.dispose();
  image = new Image(getDisplay(),imgData);  
 }


评论

该日志第一篇评论

发表评论

评论也有版权!