Создание миниатюрного изображения-компаньона для элемента управления MultiScaleimage
У меня есть приложение, в котором используется элемент управления MultiScaleImage, и я хотел бы добавить окно миниатюр с не масштабированным изображением и контуром прямоугольника, указывающим часть, которая просматривается в элементе управления MultiScaleImage. У меня нет миниатюр для изображений, но я хочу создать их во время выполнения.
1) есть ли способ получить копию неотображенного изображения из элемента управления MultiScaleImage, чтобы поместить его в элемент управления Image, или мне просто нужно использовать другой элемент управления MultiScaleImage с тем же источником.
2) Любые советы или примеры будут оценены.
Дэвид
2 ответа
Используйте класс WriteableBitmap. Если multiscaleImage является элементом управления MultiscaleImage, а миниатюра является элементом управления Image, то этот код захватит изображение из первого и отобразит его во втором.
WriteableBitmap bitmap = new WriteableBitmap(multiScaleImage, null);
Thumbnail.Source = bitmap;
Дэвид
Пожалуйста, посмотрите сообщение в блоге Джеффа Просиза об этом, используйте последнюю функцию, которую он предлагает:
Вы можете адаптировать его соответствующим образом (имеет дополнительное преимущество, заключающееся в том, что ему не нужно отображать все огромное изображение в памяти, оно должно отображать его в прямом масштабе, чтобы MultiScaleImage использовал правильные данные уровня масштабирования для этого небольшого масштаба)