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 |
Returns a font |
Int |
getSize() 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 |