Added in API level 29

FontFamily


class FontFamily
kotlin.Any
   ↳ android.graphics.fonts.FontFamily

A font family class can be used for creating Typeface.

A font family is a bundle of fonts for drawing text in various styles. For example, you can bundle regular style font and bold style font into a single font family, then system will select the correct style font from family for drawing.

FontFamily family = new FontFamily.Builder(new Font.Builder("regular.ttf").build())
       .addFont(new Font.Builder("bold.ttf").build()).build();
   Typeface typeface = new Typeface.Builder2(family).build();
 
   SpannableStringBuilder ssb = new SpannableStringBuilder("Hello, World.");
   ssb.setSpan(new StyleSpan(Typeface.Bold), 6, 12, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
 
   textView.setTypeface(typeface);
   textView.setText(ssb);
  
In this example, "Hello, " is drawn with "regular.ttf", and "World." is drawn with "bold.ttf". If there is no font exactly matches with the text style, the system will select the closest font.

Summary

Nested classes

A builder class for creating new FontFamily.

Public methods
Font
getFont(index: Int)

Returns a font

Int

Returns the number of fonts in this FontFamily.

Public methods

getFont

Added in API level 29
fun getFont(index: Int): Font

Returns a font

Parameters
index Int: an index of the font Value is 0 or greater
Return
Font a registered font This value cannot be null.

getSize

Added in API level 29
fun getSize(): Int

Returns the number of fonts in this FontFamily.

Return
Int the number of fonts registered in this family. Value is 1 or greater