Я загружаю слои изображений, чтобы сделать одно изображение. В настоящее время я укладываю их на холст. Я настроил его так, чтобы пользователь мог указать конечные размеры одного изображения, но даже когда я изменяю размер холста, изображения сохраняют свои первоначальные размеры.Изображение обрезки WPF
Я попытался изменить размер изображения при загрузке, но размеры были NaN, а фактические размеры равны 0, поэтому я не мог их изменить.
Я начинаю думать, что холст может и не быть. Любые предложения о том, как я мог бы обрезать изображения в соответствии с конкретным размером?
canvas1.Children.Clear();
int totalImages = Window1.GetNumberOfImages();
if (drawBackground)
canvas1.Background = new SolidColorBrush(Color.FromArgb(a,r,g,b));
else
canvas1.Background = new SolidColorBrush(Color.FromArgb(0, 0, 0, 0));
for (int i = 0; i < totalImages; i++)
{
Image image = new Image();
image.Source = Window1.GetNextImage(i);
canvas1.Children.Add(image);
}
Еще не пробовал, даже не знал об этом! Я попробую, когда я смогу вернуться на свой компьютер. – Califer
Я изменил внутреннюю часть цикла for на следующее, и теперь он работает. Изображение изображения = новое изображение(); BitmapSource tempSource = Window1.GetNextImage (i); CroppedBitmap CB = новый CroppedBitmap (tempSource, новый Int32Rect (0, 0, Math.min ((INT) Window1.totalWinWidth, tempSource.PixelWidth), Math.min ((INT) Window1.totalWinHeight, tempSource.PixelHeight))); image.Source = cb; canvas1.Children.Add (изображение); – Califer
> _ <Я думаю, я не могу поместить форматирование кода в комментарий ... – Califer