using System;
using UnityEngine;
namespace TMPro
{
///
/// A basic element of text representing a pictograph, image, sprite or emoji.
///
[Serializable]
public class TMP_SpriteCharacter : TMP_TextElement
{
///
/// The name of the sprite element.
///
public string name
{
get { return m_Name; }
set { m_Name = value; }
}
// =============================================
// Private backing fields for public properties.
// =============================================
[SerializeField]
private string m_Name;
// ********************
// CONSTRUCTORS
// ********************
///
/// Default constructor.
///
public TMP_SpriteCharacter()
{
m_ElementType = TextElementType.Sprite;
}
///
/// Constructor for new sprite character.
///
/// Unicode value of the sprite character.
/// Glyph used by the sprite character.
public TMP_SpriteCharacter(uint unicode, TMP_SpriteGlyph glyph)
{
m_ElementType = TextElementType.Sprite;
this.unicode = unicode;
this.glyphIndex = glyph.index;
this.glyph = glyph;
this.scale = 1.0f;
}
///
/// Constructor for new sprite character.
///
/// Unicode value of the sprite character.
/// Sprite Asset used by this sprite character.
/// Glyph used by the sprite character.
public TMP_SpriteCharacter(uint unicode, TMP_SpriteAsset spriteAsset, TMP_SpriteGlyph glyph)
{
m_ElementType = TextElementType.Sprite;
this.unicode = unicode;
this.textAsset = spriteAsset;
this.glyph = glyph;
this.glyphIndex = glyph.index;
this.scale = 1.0f;
}
///
///
///
///
///
internal TMP_SpriteCharacter(uint unicode, uint glyphIndex)
{
m_ElementType = TextElementType.Sprite;
this.unicode = unicode;
this.textAsset = null;
this.glyph = null;
this.glyphIndex = glyphIndex;
this.scale = 1.0f;
}
}
}