Windows 10中的循环CaptureElement相机流

时间:2015-11-10 11:20:23

标签: c# windows-runtime winrt-xaml windows-10 uwp

无论您在Windows 10中查看,都有圈子。使图像圆形很容易,但相机有点不同。是否有一种简单的XAML方法可以在CaptureElement中剪切相机流以使其成为圆形?

我尝试将它放在边框中,但CaptureElement并不关心它的边框。我也尝试使用Clip属性,但它只能剪切到RectangleGeometry。 一种方法肯定是抓住CaptureElement帧,将它们转换为图像(逐帧)并应用于Image元素,然后剪切图像,但似乎会有糟糕的性能。

框架中是否有一些东西可以让它变得非常简单,但是我没有看到它?

1 个答案:

答案 0 :(得分:2)

看到可能是背景总是黑色的Canvas DirectX,我看到的唯一方法就是:

1.-例如,在Inkscape中剪切一个带椭圆的矩形。

2.-复制到Expression Design和Ctrl-Shift-C(复制XAML)

3.-仅在ViewBox中放置生成的路径

 <Grid  Width="300" Height="300">
            <CaptureElement Name="PreviewControl" Stretch="Uniform" Width="280" Height="280" />
            <Viewbox Width="280" Height="280">
                <Path Width="813.701" Height="813.701" Canvas.Left="-33.3503" Canvas.Top="-45.3503" Stretch="Fill" Fill="#FF800080" Data="F1 M -33.3503,-45.3503L -33.3503,768.35L 780.35,768.35L 780.35,-45.3503L -33.3503,-45.3503 Z M 373.54,158.095C 485.863,158.095 576.985,249.137 576.985,361.54C 576.985,473.863 485.863,564.985 373.54,564.985C 261.137,564.985 170.095,473.863 170.095,361.54C 170.095,249.137 261.137,158.095 373.54,158.095 Z "/>
            </Viewbox>
        </Grid>

enter image description here

通过它你可以在路径或纯色中放置图像,这是我看到的唯一方法。希望它有所帮助