调整图像大小以使其“粘住”

时间:2012-04-27 09:58:21

标签: c# wpf crop rect

我目前的目标是调整图像大小并在图像容器中使用它。 所以我目前所做的与此类似(从内存编码......下面可能有错误,但想法大致相同):

BitmapImage test = new BitmapImage;
test.begininit();
test.source = new Uri("myimage.png");
test.decodepixelwidth = 300;
test.decodepixelheight = 220;
test.endinit();
MyPictureContainer1.Source = test;

这会将图像加载到我的容器中。现在我有另一个容器,我从第一个容器加载图像,如下所示:

double x,y,w,h;
x = 10;
y = 10;
w = 60;
h = 150;
BitmapImage test2 = new BitmapImage;
test2.begininit();
test2.source = MyPictureContainer1.Source;
test2.sourcerect = new Int32Rect( x, y ,w , h)
test2.endinit();
MyPictureContainer2.Source = test2;

然而,尽管从MyPictureContainer1拍摄了一张调整大小的图片,并在其上绘制了一个矩形蒙版(或者我将其视为矩形蒙版),MyPictureContainer2中的图像是存储在磁盘上的图像的实际分辨率,而不是MyPictureContainer1中包含的已调整大小的版本。

我希望这是有道理的,有人可以提供有关为什么我在磁盘上获得裁剪版图像而不是MyPictureContainer1图像的裁剪版本的建议?

非常感谢!

0 个答案:

没有答案