如何使用pubspec.yaml中资产系列中指定的字体列表中的特定字体

时间:2018-11-09 05:23:38

标签: flutter flutter-layout flutter-dependencies

假设我已将以下行添加到pubspec.yaml文件中 字体:

fonts:
- family: GreatVibes
  fonts:
    - asset: fonts/GreatVibes-Regular.ttf
    - asset: fonts/GreatVibes-Bold.ttf

我在我的应用程序中使用以下代码行。

new Text('My New Font',
        style: new TextStyle(
          color: Colors.white,
          fontFamily: 'GreatVibes',
          fontSize: 16.0,
        )),

我的问题是,在前面提供的两个.ttf文件中,flutter如何决定要使用哪个文件?

再说一次,如果flutter决定使用GreatVibes-Bold.ttf,我该怎么做才能使它使用GreatVibes-regular.ttf

3 个答案:

答案 0 :(得分:0)

如果我正确理解了这些字体,则必须像这样:

fonts:
- family: GreatVibes
  fonts:
    - asset: fonts/GreatVibes-Regular.ttf
    - asset: fonts/GreatVibes-Bold.ttf
      weight: 700
    - asset: fonts/GreatVibes-Italic.ttf
      style: italic

然后

new Text('My New Font',
    style: new TextStyle(
      color: Colors.white,
      fontFamily: 'GreatVibes',
      fontWeight: FontWeight.w700,
      fontSize: 16.0,
    )),

答案 1 :(得分:0)

您可以直接将其用于小部件样式,也可以使用主题对象,我更喜欢从一个位置控制整个应用程序,这里是main.dart的示例:

return MaterialApp(
  title: 'Flutter Demo',
  theme: ThemeData(
      primarySwatch: Colors.purple,
      accentColor: Colors.deepOrange,
      **fontFamily: 'Lato'**),

 ....
  },
);

答案 2 :(得分:-1)