Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf FontSize小于22时,中文字体渲染不正确_Wpf_Xaml_Fonts_Uwp_Cjk - Fatal编程技术网

Wpf FontSize小于22时,中文字体渲染不正确

Wpf FontSize小于22时,中文字体渲染不正确,wpf,xaml,fonts,uwp,cjk,Wpf,Xaml,Fonts,Uwp,Cjk,在大多数情况下,我的应用程序渲染不同的角色集没有问题。然而,当FontSize为22时,某些汉字的渲染效果很好,但当它变小时,效果却很糟糕: 这是由下面一段XAML呈现的,它同时适用于WPF和UWP,结果也有同样的问题: <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <Grid.RowDefinitions> <RowDefinition He

在大多数情况下,我的应用程序渲染不同的角色集没有问题。然而,当
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>

第二行和第四行显示了字符串的外观;第一个和第三个显示的是乱码版本

对的回答建议设置
fontfamine=“SimSun”
,这确实会导致正确显示内容。那么,我目前的选择似乎是:

  • 将字体系列从默认的“Segoe UI”更改为“SimSun”
  • 将字体大小从15增加到22

这两种选择都没有吸引力。有人有其他建议吗?或者解释为什么这些特殊字符如此麻烦?

结果是
fontwweight=“Light”
起到了以下作用:

中等
正常
半光灯
均失败<代码>浅、
半黑体
粗体
超黑体
超黑
超轻
都解决了问题

如果任何了解这一领域的人有什么贡献,我仍然感兴趣,因为我不知道是什么导致了这种行为