89 lines
2.6 KiB
C#
89 lines
2.6 KiB
C#
|
using System;
|
|||
|
using UnityEngine;
|
|||
|
|
|||
|
namespace TMPro
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// A basic element of text representing a pictograph, image, sprite or emoji.
|
|||
|
/// </summary>
|
|||
|
[Serializable]
|
|||
|
public class TMP_SpriteCharacter : TMP_TextElement
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// The name of the sprite element.
|
|||
|
/// </summary>
|
|||
|
public string name
|
|||
|
{
|
|||
|
get { return m_Name; }
|
|||
|
set { m_Name = value; }
|
|||
|
}
|
|||
|
|
|||
|
// =============================================
|
|||
|
// Private backing fields for public properties.
|
|||
|
// =============================================
|
|||
|
|
|||
|
[SerializeField]
|
|||
|
private string m_Name;
|
|||
|
|
|||
|
// ********************
|
|||
|
// CONSTRUCTORS
|
|||
|
// ********************
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Default constructor.
|
|||
|
/// </summary>
|
|||
|
public TMP_SpriteCharacter()
|
|||
|
{
|
|||
|
m_ElementType = TextElementType.Sprite;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Constructor for new sprite character.
|
|||
|
/// </summary>
|
|||
|
/// <param name="unicode">Unicode value of the sprite character.</param>
|
|||
|
/// <param name="glyph">Glyph used by the sprite character.</param>
|
|||
|
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;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Constructor for new sprite character.
|
|||
|
/// </summary>
|
|||
|
/// <param name="unicode">Unicode value of the sprite character.</param>
|
|||
|
/// <param name="spriteAsset">Sprite Asset used by this sprite character.</param>
|
|||
|
/// <param name="glyph">Glyph used by the sprite character.</param>
|
|||
|
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;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
/// <param name="unicode"></param>
|
|||
|
/// <param name="glyphIndex"></param>
|
|||
|
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;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|