如何在WPF中禁用后备字体?

问题描述 投票:-1回答:1

如何在WPF中禁用后备字体?

我想以不支持所有字符的字体显示文本,但是VS不断使用后备值替换缺少的字符。

例如,如果我要以没有“ e”和“ s”代码点的字体显示“ test”,我只想显示“ tt” not“ tESt”,其中“ E”和“ S”为其他后备字体。现在正在发生什么。

我尝试过:

<TextBlock Text="{Binding SampleText}" FontFamily="{Binding FFamily, FallbackValue={x:Null}}"/>

但是它不起作用。

有什么想法吗?

c# wpf fonts fallback
1个回答
0
投票

Wpf具有默认的后备字体。

您可以用自己的一个替换。

https://docs.microsoft.com/en-us/dotnet/api/system.windows.media.fontfamily?view=netcore-3.1

如果您使用零宽度的ttf,那么我认为这将为您提供所需的结果。

因为每个字形都故意为零宽度。

我没有可缺少字形的字体来尝试使用,但看起来像是可行的。

https://github.com/patrickkunka/zero-width/blob/master/README.md

© www.soinside.com 2019 - 2024. All rights reserved.