Class TMP_FontAsset
Inherited Members
Namespace: TMPro
Assembly: Unity.TextMeshPro.dll
Syntax
[Serializable]
[ExcludeFromPreset]
public class TMP_FontAsset : TMP_Asset
Fields
atlas
Declaration
[SerializeField]
public Texture2D atlas
Field Value
| Type | Description |
|---|---|
| Texture2D |
boldSpacing
The spacing between characters when using regular style.
Declaration
public float boldSpacing
Field Value
| Type | Description |
|---|---|
| float |
boldStyle
Defines the dilation of the text when using bold style.
Declaration
public float boldStyle
Field Value
| Type | Description |
|---|---|
| float |
italicStyle
Defines the slant of the text when using italic style.
Declaration
public byte italicStyle
Field Value
| Type | Description |
|---|---|
| byte |
normalSpacingOffset
The spacing between characters when using regular style.
Declaration
public float normalSpacingOffset
Field Value
| Type | Description |
|---|---|
| float |
normalStyle
Defines the dilation of the text when using regular style.
Declaration
public float normalStyle
Field Value
| Type | Description |
|---|---|
| float |
tabSize
Declaration
public byte tabSize
Field Value
| Type | Description |
|---|---|
| byte |
Properties
atlasHeight
The height of the atlas texture(s) used by this font asset.
Declaration
public int atlasHeight { get; }
Property Value
| Type | Description |
|---|---|
| int |
atlasPadding
The padding used between glyphs contained in the atlas texture(s) used by this font asset.
Declaration
public int atlasPadding { get; }
Property Value
| Type | Description |
|---|---|
| int |
atlasPopulationMode
Declaration
public AtlasPopulationMode atlasPopulationMode { get; set; }
Property Value
| Type | Description |
|---|---|
| AtlasPopulationMode |
atlasRenderMode
Declaration
public GlyphRenderMode atlasRenderMode { get; }
Property Value
| Type | Description |
|---|---|
| GlyphRenderMode |
atlasTexture
The font atlas used by this font asset. This is always the texture at index [0] of the fontAtlasTextures.
Declaration
public Texture2D atlasTexture { get; }
Property Value
| Type | Description |
|---|---|
| Texture2D |
atlasTextureCount
Number of atlas textures used by this font asset.
Declaration
public int atlasTextureCount { get; }
Property Value
| Type | Description |
|---|---|
| int |
atlasTextures
Array of atlas textures that contain the glyphs used by this font asset.
Declaration
public Texture2D[] atlasTextures { get; set; }
Property Value
| Type | Description |
|---|---|
| Texture2D[] |
atlasWidth
The width of the atlas texture(s) used by this font asset.
Declaration
public int atlasWidth { get; }
Property Value
| Type | Description |
|---|---|
| int |
characterLookupTable
Dictionary used to lookup characters contained in the font asset by their unicode values.
Declaration
public Dictionary<uint, TMP_Character> characterLookupTable { get; }
Property Value
| Type | Description |
|---|---|
| Dictionary<uint, TMP_Character> |
characterTable
List containing the characters of the given font asset.
Declaration
public List<TMP_Character> characterTable { get; }
Property Value
| Type | Description |
|---|---|
| List<TMP_Character> |
creationSettings
The settings used in the Font Asset Creator when this font asset was created or edited.
Declaration
public FontAssetCreationSettings creationSettings { get; set; }
Property Value
| Type | Description |
|---|---|
| FontAssetCreationSettings |
fallbackFontAssetTable
List containing the Fallback font assets for this font.
Declaration
public List<TMP_FontAsset> fallbackFontAssetTable { get; set; }
Property Value
| Type | Description |
|---|---|
| List<TMP_FontAsset> |
fontFeatureTable
Table containing the various font features of this font asset.
Declaration
public TMP_FontFeatureTable fontFeatureTable { get; }
Property Value
| Type | Description |
|---|---|
| TMP_FontFeatureTable |
fontInfo
The general information about the font. This property and FaceInfo_Legacy type are no longer used in version 1.1.0 of the font asset.
Declaration
[Obsolete("The fontInfo property and underlying type is now obsolete. Please use the faceInfo property and FaceInfo type instead.")]
public FaceInfo_Legacy fontInfo { get; }
Property Value
| Type | Description |
|---|---|
| FaceInfo_Legacy |
fontWeightTable
Array containing font assets to be used as alternative typefaces for the various potential font weights of this font asset.
Declaration
public TMP_FontWeightPair[] fontWeightTable { get; }
Property Value
| Type | Description |
|---|---|
| TMP_FontWeightPair[] |
getFontFeatures
Determines if OpenType font features should be retrieved from the source font file as new characters and glyphs are added dynamically to the font asset.
Declaration
public bool getFontFeatures { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
glyphLookupTable
Dictionary used to lookup glyphs contained in the font asset by their index.
Declaration
public Dictionary<uint, Glyph> glyphLookupTable { get; }
Property Value
| Type | Description |
|---|---|
| Dictionary<uint, Glyph> |
glyphTable
List of glyphs contained in the font asset.
Declaration
public List<Glyph> glyphTable { get; }
Property Value
| Type | Description |
|---|---|
| List<Glyph> |
isMultiAtlasTexturesEnabled
Enables the font asset to create additional atlas textures as needed.
Declaration
public bool isMultiAtlasTexturesEnabled { get; set; }
Property Value
| Type | Description |
|---|---|
| bool |
sourceFontFile
Source font file when atlas population mode is set to dynamic. Null when the atlas population mode is set to static.
Declaration
public Font sourceFontFile { get; }
Property Value
| Type | Description |
|---|---|
| Font |
Methods
ClearFontAssetData(bool)
Clears font asset data including the glyph and character tables and textures. Function might be changed to Internal and only used in tests.
Declaration
public void ClearFontAssetData(bool setAtlasSizeToZero = false)
Parameters
| Type | Name | Description |
|---|---|---|
| bool | setAtlasSizeToZero | Will set the atlas texture size to zero width and height if true. |
CreateFontAsset(string, int, int, int, GlyphRenderMode, int, int)
Creates a new font asset instance from the font file at the given file path.
Declaration
public static TMP_FontAsset CreateFontAsset(string fontFilePath, int faceIndex, int samplingPointSize, int atlasPadding, GlyphRenderMode renderMode, int atlasWidth, int atlasHeight)
Parameters
| Type | Name | Description |
|---|---|---|
| string | fontFilePath | The file path of the font file. |
| int | faceIndex | The index of font face. |
| int | samplingPointSize | The sampling point size. |
| int | atlasPadding | The padding between individual glyphs in the font atlas texture. |
| GlyphRenderMode | renderMode | The atlas render mode. |
| int | atlasWidth | The atlas texture width. |
| int | atlasHeight | The atlas texture height. |
Returns
| Type | Description |
|---|---|
| TMP_FontAsset | An instance of the newly created font asset. |
CreateFontAsset(string, string, int)
Creates a new font asset instance from the given family name and style.
Declaration
public static TMP_FontAsset CreateFontAsset(string familyName, string styleName, int pointSize = 90)
Parameters
| Type | Name | Description |
|---|---|---|
| string | familyName | The family name of the source font. |
| string | styleName | The style name of the source font face. |
| int | pointSize | Optional point size. |
Returns
| Type | Description |
|---|---|
| TMP_FontAsset | An instance of the newly created font asset. |
CreateFontAsset(Font)
Creates a new font asset instance from the provided font object.
Declaration
public static TMP_FontAsset CreateFontAsset(Font font)
Parameters
| Type | Name | Description |
|---|---|---|
| Font | font | The source font object. |
Returns
| Type | Description |
|---|---|
| TMP_FontAsset | An instance of the newly created font asset. |
CreateFontAsset(Font, int, int, GlyphRenderMode, int, int, AtlasPopulationMode, bool)
Creates a new font asset instance from the provided font object.
Declaration
public static TMP_FontAsset CreateFontAsset(Font font, int samplingPointSize, int atlasPadding, GlyphRenderMode renderMode, int atlasWidth, int atlasHeight, AtlasPopulationMode atlasPopulationMode = AtlasPopulationMode.Dynamic, bool enableMultiAtlasSupport = true)
Parameters
| Type | Name | Description |
|---|---|---|
| Font | font | The source font object. |
| int | samplingPointSize | The sampling point size. |
| int | atlasPadding | The padding between individual glyphs in the font atlas texture. |
| GlyphRenderMode | renderMode | The atlas render mode. |
| int | atlasWidth | The atlas texture width. |
| int | atlasHeight | The atlas texture height. |
| AtlasPopulationMode | atlasPopulationMode | The atlas population mode. |
| bool | enableMultiAtlasSupport | Enable multi atlas texture. |
Returns
| Type | Description |
|---|---|
| TMP_FontAsset | An instance of the newly created font asset. |
GetCharacters(TMP_FontAsset)
Function to extract all the characters from a font asset.
Declaration
public static string GetCharacters(TMP_FontAsset fontAsset)
Parameters
| Type | Name | Description |
|---|---|---|
| TMP_FontAsset | fontAsset |
Returns
| Type | Description |
|---|---|
| string |
GetCharactersArray(TMP_FontAsset)
Function which returns an array that contains all the characters from a font asset.
Declaration
public static int[] GetCharactersArray(TMP_FontAsset fontAsset)
Parameters
| Type | Name | Description |
|---|---|---|
| TMP_FontAsset | fontAsset |
Returns
| Type | Description |
|---|---|
| int[] |
HasCharacter(char, bool, bool)
Function to check if a character is contained in the font asset with the option to also check potential local fallbacks.
Declaration
public bool HasCharacter(char character, bool searchFallbacks = false, bool tryAddCharacter = false)
Parameters
| Type | Name | Description |
|---|---|---|
| char | character | |
| bool | searchFallbacks | |
| bool | tryAddCharacter |
Returns
| Type | Description |
|---|---|
| bool |
HasCharacter(int)
Function to check if a certain character exists in the font asset.
Declaration
public bool HasCharacter(int character)
Parameters
| Type | Name | Description |
|---|---|---|
| int | character |
Returns
| Type | Description |
|---|---|
| bool |
HasCharacters(string)
Function to check if certain characters exists in the font asset. Function returns false if any characters are missing.
Declaration
public bool HasCharacters(string text)
Parameters
| Type | Name | Description |
|---|---|---|
| string | text | String containing the characters to check |
Returns
| Type | Description |
|---|---|
| bool |
HasCharacters(string, out List<char>)
Function to check if certain characters exists in the font asset. Function returns a list of missing characters.
Declaration
public bool HasCharacters(string text, out List<char> missingCharacters)
Parameters
| Type | Name | Description |
|---|---|---|
| string | text | String containing the characters to check. |
| List<char> | missingCharacters | List of missing characters. |
Returns
| Type | Description |
|---|---|
| bool |
HasCharacters(string, out uint[], bool, bool)
Function to check if the characters in the given string are contained in the font asset with the option to also check its potential local fallbacks.
Declaration
public bool HasCharacters(string text, out uint[] missingCharacters, bool searchFallbacks = false, bool tryAddCharacter = false)
Parameters
| Type | Name | Description |
|---|---|---|
| string | text | String containing the characters to check. |
| uint[] | missingCharacters | Array containing the unicode values of the missing characters. |
| bool | searchFallbacks | Determines if fallback font assets assigned to this font asset should be searched. |
| bool | tryAddCharacter |
Returns
| Type | Description |
|---|---|
| bool | Returns true if all requested characters are available in the font asset and potential fallbacks. |
ReadFontAssetDefinition()
Reads the various data tables of the font asset and populates various data structures to allow for faster lookup of related font asset data.
Declaration
public void ReadFontAssetDefinition()
TryAddCharacters(string, bool)
Try adding the characters from the provided string to the font asset.
Declaration
public bool TryAddCharacters(string characters, bool includeFontFeatures = false)
Parameters
| Type | Name | Description |
|---|---|---|
| string | characters | String containing the characters to add to the font asset. |
| bool | includeFontFeatures |
Returns
| Type | Description |
|---|---|
| bool | Returns true if all the characters were successfully added to the font asset. Return false otherwise. |
TryAddCharacters(string, out string, bool)
Try adding the characters from the provided string to the font asset.
Declaration
public bool TryAddCharacters(string characters, out string missingCharacters, bool includeFontFeatures = false)
Parameters
| Type | Name | Description |
|---|---|---|
| string | characters | String containing the characters to add to the font asset. |
| string | missingCharacters | String containing the characters that could not be added to the font asset. |
| bool | includeFontFeatures |
Returns
| Type | Description |
|---|---|
| bool | Returns true if all the characters were successfully added to the font asset. Return false otherwise. |
TryAddCharacters(uint[], bool)
Try adding the characters from the provided string to the font asset.
Declaration
public bool TryAddCharacters(uint[] unicodes, bool includeFontFeatures = false)
Parameters
| Type | Name | Description |
|---|---|---|
| uint[] | unicodes | Array that contains the characters to add to the font asset. |
| bool | includeFontFeatures |
Returns
| Type | Description |
|---|---|
| bool | Returns true if all the characters were successfully added to the font asset. Return false otherwise. |
TryAddCharacters(uint[], out uint[], bool)
Try adding the characters from the provided string to the font asset.
Declaration
public bool TryAddCharacters(uint[] unicodes, out uint[] missingUnicodes, bool includeFontFeatures = false)
Parameters
| Type | Name | Description |
|---|---|---|
| uint[] | unicodes | Array that contains the characters to add to the font asset. |
| uint[] | missingUnicodes | Array containing the characters that could not be added to the font asset. |
| bool | includeFontFeatures |
Returns
| Type | Description |
|---|---|
| bool | Returns true if all the characters were successfully added to the font asset. Return false otherwise. |