FontSynthesis
-
Cmn
value class FontSynthesis
Possible options for font synthesis.
FontSynthesis is used to specify whether the system should fake bold or slanted glyphs when the FontFamily used does not contain bold or oblique Fonts.
If the font family does not include a requested FontWeight or FontStyle, the system fakes bold or slanted glyphs when the Weight or Style, respectively, or both when All is set. If this is not desired, use None to disable font synthesis.
It is possible to fake an increase of FontWeight but not a decrease. It is possible to fake a regular font slanted, but not vice versa.
FontSynthesis works the same way as the CSS font-synthesis property.
import androidx.compose.material.Text import androidx.compose.ui.text.TextStyle import androidx.compose.ui.text.font.Font import androidx.compose.ui.text.font.FontFamily import androidx.compose.ui.text.font.FontSynthesis import androidx.compose.ui.text.font.FontWeight // The font family contains a single font, with normal weight val fontFamily = FontFamily(Font(resId = R.font.myfont, weight = FontWeight.Normal)) // Configuring the Text composable to be bold // Using FontSynthesis.Weight to have the system render the font bold my making the glyphs // thicker Text( text = "Demo Text", style = TextStyle( fontFamily = fontFamily, fontWeight = FontWeight.Bold, fontSynthesis = FontSynthesis.Weight, ), )
Summary
Public companion functions |
||
|---|---|---|
FontSynthesis |
Creates a FontSynthesis from the given integer value. |
Cmn
|
Public companion properties |
||
|---|---|---|
FontSynthesis |
The system synthesizes both bold and slanted fonts if either of them are not available in the |
Cmn
|
FontSynthesis |
Turns off font synthesis. |
Cmn
|
FontSynthesis |
Only an slanted font is synthesized, if it is not available in the |
Cmn
|
FontSynthesis |
Only a bold font is synthesized, if it is not available in the |
Cmn
|
Public companion functions
valueOf
fun valueOf(value: Int): FontSynthesis
Creates a FontSynthesis from the given integer value. This can be useful if you need to serialize/deserialize FontSynthesis values.
| Parameters | |
|---|---|
value: Int |
The integer representation of the FontSynthesis. |
| Throws | |
|---|---|
kotlin.IllegalArgumentException |
if the given |
| See also | |
|---|---|
value |
Public companion properties
All
val All: FontSynthesis
The system synthesizes both bold and slanted fonts if either of them are not available in the FontFamily
None
val None: FontSynthesis
Turns off font synthesis. Neither bold nor slanted faces are synthesized if they don't exist in the FontFamily
Style
val Style: FontSynthesis
Only an slanted font is synthesized, if it is not available in the FontFamily. Bold fonts will not be synthesized.
Weight
val Weight: FontSynthesis
Only a bold font is synthesized, if it is not available in the FontFamily. Slanted fonts will not be synthesized.