Я пытаюсь включить возможности масштабирования изображения в моем приложении wp7, используя либо кран, либо щепотку, как и другие функции приложения, т. Е. Карту. Большинство сообщений, которые я видел в связи с этим, являются старыми, и мне интересно, есть ли более свежий способ достичь этого?реализация масштабирования изображения wp7
ответ
Вы должны использовать масштаб преобразования .. Я могу сделать BlogPost позже, если вы interested.for пинч масштабирования дрэг взмахом и т.д. Вы должны использовать жест услуг от инструментария
private void GestureListener_DragDelta(object sender, DragDeltaGestureEventArgs e)
{
scaleTrans.CenterX = (scaleTrans.CenterX - e.HorizontalChange);
scaleTrans.CenterY = (scaleTrans.CenterY - e.VerticalChange);
if (scaleTrans.CenterX < 0)
scaleTrans.CenterX = 0;
else if (scaleTrans.CenterX > (imgViewer.Height * scaleTrans.ScaleX))
scaleTrans.CenterX = imgViewer.Height * scaleTrans.ScaleX;
if(scaleTrans.CenterY < 0)
scaleTrans.CenterY = 0;
else if (scaleTrans.CenterY > (imgViewer.Height * scaleTrans.ScaleY))
scaleTrans.CenterY = imgViewer.Height * scaleTrans.ScaleY;
}
не знаю, есть что-то лучше, но вот то, что я делаю:
<Image Name="displayImage" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Source="{Binding photo_link}" RenderTransformOrigin="0.5, 0.5" CacheMode="BitmapCache">
<Image.RenderTransform>
<CompositeTransform x:Name="transform" />
</Image.RenderTransform>
<toolkit:GestureService.GestureListener>
<toolkit:GestureListener PinchDelta="OnPinchDelta" PinchStarted="OnPinchStarted" />
</toolkit:GestureService.GestureListener>
</Image>
private void OnPinchStarted(object sender, PinchStartedGestureEventArgs e)
{
var image = sender as System.Windows.Controls.Image;
if (image == null) return;
var transform = image.RenderTransform as CompositeTransform;
if (transform == null) return;
initialScale = transform.ScaleX;
}
private void OnPinchDelta(object sender, PinchGestureEventArgs e)
{
var image = sender as System.Windows.Controls.Image;
if (image == null) return;
var transform = image.RenderTransform as CompositeTransform;
if (transform == null) return;
transform.ScaleX = initialScale * e.DistanceRatio;
transform.ScaleY = initialScale * e.DistanceRatio;
}
вы также можете следить за оригинальную шкалу, если вы хотите сделать быстрый двойной кран или что-то, чтобы сбросить размер.
спасибо, идеально подходит для масштабирования ... Есть ли возможность панорамирования изображения после масштабирования? – mhSligo
собирался добавить событие DragDelta, но я вижу, что кто-то избил меня. Разумеется, используйте это для панорамирования и не забудьте добавить его в свой GestureListener в xaml. – earthling
- 1. Реализация списка ресурсов в WP7
- 2. реализация stopclock в wp7
- 3. Реализация масштабирования внутри FancyBox
- 4. Реализация панорамирования и масштабирования
- 5. Реализация масштабирования на фрактальной
- 6. Реализация пользовательского масштабирования для UIScrollView
- 7. Алгоритм масштабирования изображения
- 8. Реализация панорамирования и масштабирования jsPlumb
- 9. перетаскивании изображения в WP7
- 10. привязка изображения WP7
- 11. анимация масштабирования изображения и масштабирования для Android
- 12. Реализация суперсэмплинга для масштабирования высокого качества
- 13. Реализация масштабирования на неподвижной точке, JavaScript/холст
- 14. Простой способ масштабирования изображения на основе масштабирования другого изображения?
- 15. Плагин масштабирования изображения JQuery
- 16. PHP: Размерность масштабирования изображения
- 17. масштабирования изображения, генерируемые imshow
- 18. оптимизированный способ масштабирования изображения
- 19. Реализация селектора длинного списка в wp7
- 20. реализация эффекта масштабирования в imageView и viewPager
- 21. Изображение изображения запуска и масштабирования изображения
- 22. Ошибка масштабирования изображения в css
- 23. Размеры масштабирования Android включенного изображения
- 24. Javascript/jQuery плагин масштабирования изображения
- 25. Активность масштабирования изображения для android
- 26. Правильные преобразования для масштабирования изображения
- 27. Проблема масштабирования изображения для Android
- 28. Проблема масштабирования изображения на Ionic
- 29. Sharp UILabel после масштабирования изображения
- 30. Качество масштабирования изображения Adobe Flex
Это позволяет пользователю масштабировать, а затем перемещаться по увеличенному изображению? – mhSligo
да, я реализовал щепотку зума, перетаскивания, щелчка и т. Д. Вот код для панорамирования/перетаскивания –
Хорошо, и я просто добавляю что-то вроде 'DragDelta =" OnDragDelta "' в моем xaml? – mhSligo