在大多数情况下,我的应用会呈现不同的字符集而不会出现问题。但是,有些中文字符在FontSize
为22时呈现良好状态,但在较小时则可怜:
这是由以下XAML呈现的,它适用于WPF和UWP,但结果有同样的问题:
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBox x:Name="textBox" Grid.Row="0" FontSize="21" Text="〾⿰⿱⿲⿳⿴⿵⿶⿷⿸⿹⿺⿻" />
<TextBox Grid.Row="1" FontSize="22" Text="{Binding Text, ElementName=textBox}" />
<TextBlock Grid.Row="2" FontSize="21" Text="{Binding Text, ElementName=textBox}" />
<TextBlock Grid.Row="3" FontSize="22" Text="{Binding Text, ElementName=textBox}" />
</Grid>
第二行和第四行显示字符串应该如何显示;第一个和第三个显示乱码版本。
this somewhat related question的答案建议设置FontFamily="SimSun"
,这确实会使事情正确显示。那么,我的选择目前似乎是:
这两种选择都没有吸引力。有没有人有其他建议?或解释为什么这些特殊字符如此麻烦?