缩放相机预览也正在调整控件的大小
Zooming Camera Preview is also Resizing the Control
我想 scale/zoom 围绕中心点进行相机预览,但我不希望控件本身 "grow" 这是当前发生的情况。我怎样才能做到这一点?
<CaptureElement Name="PreviewControl" RenderTransformOrigin="0.5 0.5" Width="400" Height="300" >
<CaptureElement.RenderTransform >
<ScaleTransform x:Name="zoom" />
</CaptureElement.RenderTransform>
</CaptureElement>
..然后当缩放滑块移动时我有:
zoom.ScaleX = sliderZoom.Value;
zoom.ScaleY = sliderZoom.Value;
当我移动滑块时,图像会缩放,但整个 CaptureElement 会变大!
您可以尝试使用 ScrollViewer
而不是 RenderTransform
:
<ScrollViewer Name="PreviewScroll" ZoomMode="Enabled" Width="400" Height="300">
<CaptureElement Name="PreviewControl" RenderTransformOrigin="0.5 0.5">
</CaptureElement>
</ScrollViewer>
这会让你自动缩放。此外,滚动查看器将保持其大小,但子控件(CaptureElement
)将在滚动查看器内增长。
我想 scale/zoom 围绕中心点进行相机预览,但我不希望控件本身 "grow" 这是当前发生的情况。我怎样才能做到这一点?
<CaptureElement Name="PreviewControl" RenderTransformOrigin="0.5 0.5" Width="400" Height="300" >
<CaptureElement.RenderTransform >
<ScaleTransform x:Name="zoom" />
</CaptureElement.RenderTransform>
</CaptureElement>
..然后当缩放滑块移动时我有: zoom.ScaleX = sliderZoom.Value; zoom.ScaleY = sliderZoom.Value;
当我移动滑块时,图像会缩放,但整个 CaptureElement 会变大!
您可以尝试使用 ScrollViewer
而不是 RenderTransform
:
<ScrollViewer Name="PreviewScroll" ZoomMode="Enabled" Width="400" Height="300">
<CaptureElement Name="PreviewControl" RenderTransformOrigin="0.5 0.5">
</CaptureElement>
</ScrollViewer>
这会让你自动缩放。此外,滚动查看器将保持其大小,但子控件(CaptureElement
)将在滚动查看器内增长。