UWP 文本样式?

UWP Text Styles?

如果我想为按钮或文本框中的文本添加阴影或发光效果,除了用图像替换文本之外,还有什么方法可以做到这一点?

此外,Microsoft 在其 'Guidelines for fonts' 页面上警告说,"UWP apps that will available on mobile devices should never use fonts for UI content other than fonts in this list." 该列表非常短。这是否意味着我不能或不应该使用自定义字体,即使我将其包含在包中,而不是作为下载?

没有将效果应用到 XAML 内容的好方法,WinRT 目前也缺少将 XAML 元素渲染到位图的方法,因此您主要剩下的方法是您不需要的不要使用 XAML.

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

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

  • 将图形与您的应用程序应用的发光捆绑在一起,这显然不适用于完全动态的形状,但您可以对类似于我在此处的回答的文本执行此操作。
  • 使用 Direct2D 而不是 XAML 并使用 Direct2D 效果(SharpDX 为 Direct2D 提供绑定)
  • 如果您需要将光晕应用到位图,您可以使用 WriteableBitmap 并自己应用光晕。 (WriteableBitmapEX 可能会有用)
  • 在经典的 WinRT 应用程序中,您可以使用 HTML 和 CSS 而不是 XAML,可能托管在 WebView 中或用于整个应用程序。

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

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