首页 > 解决方案 > Flutter - 字体在不同版本的 iOS 上表现不同

问题描述

我正在用 Flutter 开发一个应用程序。在 iPhoneX 模拟器 - iOS 13.5 版中运行我们的应用程序时,一切正常。

在iOS 13.3版本的 iPhoneX 模拟器中,所有fontWeight 300的文本都无法正确呈现 - 请参阅附图。我们使用的字体是“Helvetica neue”。什么会导致这种情况?会不会是字体本身的问题?

这就是我们在 pubspec.yml 文件中定义字体的方式:

- family: Halvetica
  fonts:
    - asset: fonts/Helvetica45Light.ttf
    - asset: fonts/Helvetica25UltraLight.ttf
      weight: 100
    - asset: fonts/Helvetica35Thin.ttf
      weight: 300
    - asset: fonts/Helvetica55Roman.ttf
      weight: 500
    - asset: fonts/Helvetica65Medium.ttf
      weight: 600
    - asset: fonts/Helvetica85Heavy.ttf
      weight: 700

这是字体系列的设置方式:

var baseTextStyle = TextStyle(fontFamily: "Halvetica", color: AppColors.black);

我有一个配置,可以在其中创建自定义主题:

class AppTheme {
 static ThemeData of(context) {
   var theme = Theme.of(context);
   return theme.copyWith(...); // Here I override the default theme
 }
}

( 在此处输入图像描述

标签: iosflutterfonts

解决方案


推荐阅读