图像转换失败

时间:2017-09-24 12:21:50

标签: c# winforms graphics drawimage

我有问题显示转换后的图像。 虽然以下代码可以正常工作:

Image img = Resources.Resources.router;
PointF imageLocation = new PointF(10, 10);
g.DrawImage(img, imageLocation);

使用转换修改上述内容会在g.DrawImage()处抛出异常“参数无效”:

Image img = Resources.Resources.router;
PointF imageLocation = new PointF(10, 10);
img.RotateFlip(RotateFlipType.RotateNoneFlipXY);
g.DrawImage(img, imageLocation); 

我理解这种类型的错误与某些处置对象有关,但我无法弄清楚这里和何时处置的内容。在调用g.DrawImage()之前,Image似乎完全有效: enter image description here

但接下来会发生: enter image description here

所以我在这里失踪了,有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我终于找到了解决方案,但仍然不完全确定背后的原因:

using (Image img = new Bitmap(Resources.Resources.router))
{
   PointF imageLocation = new PointF(10, 10);
   img.RotateFlip(RotateFlipType.RotateNoneFlipXY);
   g.DrawImage(img, imageLocation);
}