c# - Windows Phone 8.1 Runtime 中的投影效果?

标签 c# xaml windows-runtime windows-phone-8.1 dropshadow

我正在寻找一种方法来为我的 Windows Phone 8.1 运行时(不是 Silverlight!)应用程序中的多种元素添加投影效果。主要问题是……没有官方的 API。主要问题是我不仅需要在基本形状(如矩形或直线)上模仿这种效果,而且还需要在路径上模仿这种效果,如下所示:

Taken from question /4519243/path-with-broken-shadow-effect

图片借自这个问题:path-with-broken-shadow-effect - 希望楼主不要介意 ;) 现在,他已经实现了这个效果,因为它是在 WPF 中完成的。我正在开发一个通用应用程序(因此是 WinRT),并且没有效果扩展。

我在网上搜索了很多次,找到了一些变通办法,但他们都遗漏了一些东西。例如这个:

http://www.silverlightshow.net/items/Simple-Xaml-Drop-Shadows-in-Silverlight-2.aspx <- 我不能在 Canvas 上工作,内容必须是 Grid

您知道如何在 Windows Phone 8.1 运行时中伪造投影效果以获得令人满意的结果吗?

最佳答案

RenderTransform 应用于阴影形状。设置比例使其变大:

<Grid Style="{StaticResource LayoutRootStyle}" Background="#FF803535" >             
        <Rectangle Width="100" Height="100" Opacity="0.3" RenderTransformOrigin="0,0" StrokeThickness="16" StrokeDashCap="Round" StrokeEndLineCap="Round" StrokeLineJoin="Round" StrokeStartLineCap="Round" Stroke="Black"  >
            <Rectangle.RenderTransform>
                <CompositeTransform ScaleX="1.07" ScaleY="1.07"  />
            </Rectangle.RenderTransform>
        </Rectangle>
        <Rectangle Width="100" Height="100" Fill="Blue"></Rectangle>
    </Grid>

关于c# - Windows Phone 8.1 Runtime 中的投影效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25382447/

相关文章:

c# - 线程信号基础

c# - 对于名为 "Misc"的类别,CategoryAttribute 返回 "Default"

C# 嵌入式浏览器忽略 CSS Wordwrap

windows-8 - 如何以编程方式获取 WinRT (Windows 8) 中的 mac 地址?

c# - Windows 8 : how to add user control with C# code

javascript - 如何获取单个输入字段的值并将每个产品发送到数据库

c# - 如何只让一个线程运行关键部分,同时丢弃其他线程而不挂起

c# - 使用字符串创建流文档

c# - WPF-组合框选择已更改显示最后选择的项目而不是当前项目

windows-runtime - Windows.Web.Http.HttpClient超时选项