FontFamily.Builder
  public
  static
  final
  
  class
  FontFamily.Builder
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | android.graphics.fonts.FontFamily.Builder | 
A builder class for creating new FontFamily.
Summary
| Public constructors | |
|---|---|
| 
      Builder(Font font)
      Constructs a builder. | |
| Public methods | |
|---|---|
| 
        
        
        
        
        
        FontFamily.Builder | 
      addFont(Font font)
      Adds different style font to the builder. | 
| 
        
        
        
        
        
        FontFamily | 
      build()
      Build the font family | 
| 
        
        
        
        
        
        FontFamily | 
      buildVariableFamily()
      Build a variable font family that automatically adjust the `wght` and `ital` axes value for the requested weight/italic style values. | 
| Inherited methods | |
|---|---|
Public constructors
Builder
public Builder (Font font)
Constructs a builder.
| Parameters | |
|---|---|
| font | Font: a font
 This value cannot benull. | 
Public methods
addFont
public FontFamily.Builder addFont (Font font)
Adds different style font to the builder.
 System will select the font if the text style is closest to the font.
 If the same style font is already added to the builder, this method will fail with
 IllegalArgumentException.
 Note that system assumes all fonts bundled in FontFamily have the same coverage for the
 code points. For example, regular style font and bold style font must have the same code
 point coverage, otherwise some character may be shown as tofu.
| Parameters | |
|---|---|
| font | Font: a font
 This value cannot benull. | 
| Returns | |
|---|---|
| FontFamily.Builder | this builder
 This value cannot be null. | 
build
public FontFamily build ()
Build the font family
| Returns | |
|---|---|
| FontFamily | a font family
 This value cannot be null. | 
buildVariableFamily
public FontFamily buildVariableFamily ()
Build a variable font family that automatically adjust the `wght` and `ital` axes value
 for the requested weight/italic style values.
 To build a variable font family, added fonts must meet one of following conditions.
 If two font files are added, both font files must support `wght` axis and one font must
 support FontStyle.FONT_SLANT_UPRIGHT and another font must support
 FontStyle.FONT_SLANT_ITALIC. If the requested weight value is lower than minimum
 value of the supported `wght` axis, the minimum supported `wght` value is used. If the
 requested weight value is larger than maximum value of the supported `wght` axis, the
 maximum supported `wght` value is used. The weight values of the fonts are ignored.
 If one font file is added, that font must support the `wght` axis. If that font support
 `ital` axis, that `ital` value is set to 1 when the italic style is requested. If that
 font doesn't support `ital` axis, synthetic italic may be used. If the requested
 weight value is lower than minimum value of the supported `wght` axis, the minimum
 supported `wght` value is used. If the requested weight value is larger than maximum
 value of the supported `wght`axis, the maximum supported `wght` value is used. The weight
 value of the font is ignored.
 If none of the above conditions are met, the provided font files cannot be used for
 variable font family and this function returns null. Even if this function
 returns null, you can still use build() method for creating FontFamily
 instance with manually specifying variation settings by using
 Font.Builder.setFontVariationSettings(String).
| Returns | |
|---|---|
| FontFamily | A variable font family. null if a variable font cannot be built from the given fonts. | 
