UWP文字样式?

时间:2016-03-01 14:31:28

标签: xaml win-universal-app windows-10-universal

如果我想在按钮或文本框中为文本添加投影或发光效果,有没有办法做到用图像替换文本?

此外,微软警告他们的“字体指南”页面,“移动设备上可用的UWP应用程序绝不应该使用字体作为此列表中字体以外的UI内容。”那个清单很短。这是否意味着我不能或不应该使用自定义字体,即使我将其包含在包中,而不是下载?

1 个答案:

答案 0 :(得分:1)

没有一种方法可以将效果应用于XAML内容,WinRT目前也缺乏将XAML元素呈现到位图的方法,因此您主要使用的方法是不使用XAML。

确保发光是必要的,并且您已查看指南。你已经这样做了,所以我最好的建议是不要使用它。如果您确定需要它,请提供以下建议:

对于简单的情况,您可以使用渐变或重复的几何体来获得发光效果。

  • 使用您的应用程序已经应用的发光图像捆绑图形,这显然不适用于完全动态的形状,但您可以使用与我的答案类似的文本。
  • 使用Direct2D代替XAML并使用Direct2D效果(SharpDX为Direct2D提供绑定)
  • 如果您需要对位图应用光晕,可以使用WriteableBitmap并自己应用光晕。 (WriteableBitmapEX可能很有用)
  • 在经典的WinRT应用程序中,您可以使用HTML和CSS代替XAML,可能托管在WebView中或整个应用程序中。

我的建议仍然是不使用它并遵循指南。应用程序认证过程通常是严格的,所以如果您计划将来在商店中发布应用程序;我建议你节省时间,不要使用文字效果。

最后一种方法是在Visual Blend中编辑控件本身,然后创建资源的副本,但这是一种讨厌的方法。