平面上的投影和规模造成在Silverlight模糊
-
20-09-2019 - |
题
确定,
因此,我已努力使其依赖于图像由单独的因子缩放的应用程序。这些图像是随后能够被翻转,但使用的动画的工作的ProjectionPlane转动。
问题是当在图像周围既缩放和旋转。出于某种原因,它开始bluring,其中的非缩放的图像不模糊。
另外,如果你看下面的示例图像(顶部被缩放和旋转,底部被旋转)最上面的一个的突起甚至不似乎是正确。它太水平。
这此为测试程序的代码:
<UserControl x:Class="SilverlightApplication1.Page"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="400" Height="300">
<Canvas x:Name="LayoutRoot" Background="White">
<Border Canvas.Top="25" Canvas.Left="50">
<Border.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="3" ScaleY="3" />
</TransformGroup>
</Border.RenderTransform>
<Border.Projection>
<PlaneProjection RotationY="45"/>
</Border.Projection>
<Image Source="bw-test-pattern.jpg" Width="50" Height="40"/>
</Border>
<Border Canvas.Top="150" Canvas.Left="50">
<Border.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="1" ScaleY="1" />
</TransformGroup>
</Border.RenderTransform>
<Border.Projection>
<PlaneProjection RotationY="45"/>
</Border.Projection>
<Image Source="bw-test-pattern.jpg" Width="150" Height="120"/>
</Border>
</Canvas>
</UserControl>
因此,如果任何人都可以摆脱尽可能为什么这可能发生的任何光线,我会非常感激。建议也欢迎! :)
** **更新
只是为了澄清,如果投影平面内旋转为0,则图像变得无法模糊,因此其仅在该图像是模糊的旋转。
解决方案
在上面的图像的宽度被设定为50,高度为40。因此,它被按比例缩小。然后你将其放大到合适的大小150,120。我想Silverlight的缩放图像下来,不存储由于性能optmization原来的大小。离开横向扩展并设置正确的宽度和高度的第一图像。
其他提示
它看起来像在其被拉伸时被过滤的顶部图像。从你的代码中有:
<Image Source="bw-test-pattern.jpg" Width="50" Height="40"/>
用于顶部图像和
<Image Source="bw-test-pattern.jpg" Width="150" Height="120"/>
用于底部之一。你有不同的图像大小,以便最上面的一个可能被粗化,因此模糊,因为它内插丢失的像素。
我不熟悉使用Silverlight,所以我不知道你是如何控制的过滤选项,但设置了顶线上面一样的底部有一个可能会解决它。
不隶属于 StackOverflow