如果有一个图片。100px * 100px的,怎么把截取它中间的一块图片。还有我现在有个200px * 200px的图片,怎么把它弄成100px * 100px的图片。两个问题。小白问一下哈~

解决方案 »

  1.   

    创建目标Bitmap然后在它上面创建Graphics对象,然后用Graphics的方法画到目标Bitmap上,
      

  2.   

    但是我的问题是如果有一个图片。100px * 100px的,怎么把截取它中间的一块图片。
      

  3.   

     Graphics g = Graphics.FromImage(destImg);
                Rectangle rect = new Rectangle(0, 0, (int)width, (int)height);
                g.DrawImage(thumImg, rect, rect, GraphicsUnit.Pixel);
                g.Save();
      

  4.   

    用public void DrawImage(
    Image image,
    Rectangle destRect,
    Rectangle srcRect,
    GraphicsUnit srcUnit
    )
    这个版本,可以只截取 原图片的srcRect这小部分,到目标图片的destRect位置上,还可以缩放,
      

  5.   

    100px * 100px的,怎么把截取它中间的一块图片。计算它的坐标 X Y 然后截取
      

  6.   

    http://msdn.microsoft.com/zh-cn/library/system.drawing.graphics.drawimageunscaled%28v=VS.80%29.aspx  在由坐标对指定的位置,使用图像的原始物理大小绘制指定的图像。