Tag: 平移

WPF图像平移,缩放和滚animation布上的图层

我希望有人能帮助我。 我正在构build一个WPF成像应用程序,该应用程序从摄像头获取实时图像,以便用户查看图像,然后突出显示该图像上的感兴趣区域(ROI)。 关于ROI(宽度,高度,相对于图像上的点的位置等等)的信息然后被发送回相机,实际上是告诉/训练相机固件在哪里寻找诸如条形码,文本,液位,转弯在图像上的螺丝等)。 所需的function是能够平移和缩放图像及其ROI,以及在图像缩放比查看区域大时滚动。 ROI的StrokeThickness和FontSize需要保持原始比例,但是ROI中的形状的宽度和高度需要随图像一起缩放(这对捕获传输到相机的精确像素位置至关重要)。 除了滚动和其他一些问题之外,我已经完成了大部分工作。 我关心的两个方面是: 当我介绍一个ScrollViewer我没有得到任何滚动的行为。 据我了解,我需要引入一个LayoutTransform来获得正确的ScrollViewer行为。 但是当我这样做时,其他区域开始分解(例如ROI在图像上不能保持其正确的位置,或者在平移时鼠标指针开始从图像上的选定点开始蠕动,或者图像的左angular弹跳到MouseDown上的当前鼠标位置。) 我不能像我所需要的那样得到我的投资回报率。 我有这个工作,但它不理想。 我有什么不保留确切的中风厚度,我没有看到在文本块忽略规模。 希望你能看到我在代码示例中做了什么。 我相信我的问题与我对变换缺乏理解以及它们与WPF布局系统的关系有关。 希望展示我迄今为止所完成的代码的翻译将有所帮助(见下文)。 仅供参考,如果Adorners是这样的build议,这可能不适用于我的情况,因为我最终可能会得到比所支持的更多的装饰(传闻144装饰是事情开始崩溃的时候)。 首先,下面是一个屏幕截图,展示了一个ROI(文本和形状)的图像。 矩形,椭圆和文本需要按照图像上的比例和旋转的区域,但不能按比例缩放或字体大小。 这里是显示上述图像的XAML,以及用于缩放的滑块(鼠标滚轮缩放将在稍后提供) <Window x:Class="PanZoomStackOverflow.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" Title="MainWindow" Height="768" Width="1024"> <DockPanel> <Slider x:Name="_ImageZoomSlider" DockPanel.Dock="Bottom" Value="2" HorizontalAlignment="Center" Margin="6,0,0,0" Width="143" Minimum=".5" Maximum="20" SmallChange=".1" LargeChange=".2" TickFrequency="2" TickPlacement="BottomRight" Padding="0" Height="23"/> <!– This resides in a user control in my […]