203 lines
8.2 KiB
C#
203 lines
8.2 KiB
C#
using System;
|
|
using UnityEngine.Bindings;
|
|
|
|
|
|
namespace TMPro
|
|
{
|
|
/// <summary>
|
|
/// Rich Text Tags and Attribute definitions and their respective HashCode values.
|
|
/// </summary>
|
|
internal enum MarkupTag : int
|
|
{
|
|
// Rich Text Tags
|
|
BOLD = 66, // <b>
|
|
SLASH_BOLD = 1613, // </b>
|
|
ITALIC = 73, // <i>
|
|
SLASH_ITALIC = 1606, // </i>
|
|
UNDERLINE = 85, // <u>
|
|
SLASH_UNDERLINE = 1626, // </u>
|
|
STRIKETHROUGH = 83, // <s>
|
|
SLASH_STRIKETHROUGH = 1628, // </s>
|
|
MARK = 2699125, // <mark>
|
|
SLASH_MARK = 57644506, // </mark>
|
|
SUBSCRIPT = 92132, // <sub>
|
|
SLASH_SUBSCRIPT = 1770219, // </sub>
|
|
SUPERSCRIPT = 92150, // <sup>
|
|
SLASH_SUPERSCRIPT = 1770233, // </sup>
|
|
COLOR = 81999901, // <color>
|
|
SLASH_COLOR = 1909026194, // </color>
|
|
ALPHA = 75165780, // <alpha>
|
|
A = 65, // <a>
|
|
SLASH_A = 1614, // </a>
|
|
SIZE = 3061285, // <size>
|
|
SLASH_SIZE = 58429962, // </size>
|
|
SPRITE = -991527447, // <sprite>
|
|
NO_BREAK = 2856657, // <nobr>
|
|
SLASH_NO_BREAK = 57477502, // </nobr>
|
|
STYLE = 100252951, // <style>
|
|
SLASH_STYLE = 1927738392, // </style>
|
|
FONT = 2586451, // <font>
|
|
SLASH_FONT = 57747708, // </font>
|
|
SLASH_MATERIAL = -1100708252, // </material>
|
|
LINK = 2656128, // <link>
|
|
SLASH_LINK = 57686191, // </link>
|
|
FONT_WEIGHT = -1889896162, // <font-weight=xxx>
|
|
SLASH_FONT_WEIGHT = -757976431, // </font-weight>
|
|
NO_PARSE = -408011596, // <noparse>
|
|
SLASH_NO_PARSE = -294095813, // </noparse>
|
|
POSITION = 85420, // <pos>
|
|
SLASH_POSITION = 1777699, // </pos>
|
|
VERTICAL_OFFSET = 1952379995, // <voffset>
|
|
SLASH_VERTICAL_OFFSET = -11107948, // </voffset>
|
|
SPACE = 100083556, // <space>
|
|
SLASH_SPACE = 1927873067, // </space>
|
|
PAGE = 2808691, // <page>
|
|
SLASH_PAGE = 58683868, // </page>
|
|
ALIGN = 75138797, // <align>
|
|
SLASH_ALIGN = 1916026786, // </align>
|
|
WIDTH = 105793766, // <width>
|
|
SLASH_WIDTH = 1923459625, // </width>
|
|
GRADIENT = -1999759898, // <gradient>
|
|
SLASH_GRADIENT = -1854491959, // </gradient>
|
|
CHARACTER_SPACE = -1584382009, // <cspace>
|
|
SLASH_CHARACTER_SPACE = -1394426712,// </cspace>
|
|
MONOSPACE = -1340221943, // <mspace>
|
|
SLASH_MONOSPACE = -1638865562, // </mspace>
|
|
CLASS = 82115566, // <class>
|
|
INDENT = -1514123076, // <indent>
|
|
SLASH_INDENT = -1496889389, // </indent>
|
|
LINE_INDENT = -844305121, // <line-indent>
|
|
SLASH_LINE_INDENT = 93886352, // </line-indent>
|
|
MARGIN = -1355614050, // <margin>
|
|
SLASH_MARGIN = -1649644303, // </margin>
|
|
MARGIN_LEFT = -272933656, // <margin-left>
|
|
MARGIN_RIGHT = -447416589, // <margin-right>
|
|
LINE_HEIGHT = -799081892, // <line-height>
|
|
SLASH_LINE_HEIGHT = 200452819, // </line-height>
|
|
ACTION = -1827519330, // <action>
|
|
SLASH_ACTION = -1187217679, // </action>
|
|
SCALE = 100553336, // <scale>
|
|
SLASH_SCALE = 1928413879, // </scale>
|
|
ROTATE = -1000007783, // <rotate>
|
|
SLASH_ROTATE = -764695562, // </rotate>
|
|
|
|
LOWERCASE = -1506899689, // <lowercase>
|
|
SLASH_LOWERCASE = -1451284584, // </lowercase>
|
|
ALLCAPS = 218273952, // <allcaps>
|
|
SLASH_ALLCAPS = -797437649, // </allcaps>
|
|
UPPERCASE = -305409418, // <uppercase>
|
|
SLASH_UPPERCASE = -582368199, // </uppercase>
|
|
SMALLCAPS = -766062114, // <smallcaps>
|
|
SLASH_SMALLCAPS = 199921873, // </smallcaps>
|
|
|
|
// Font Features
|
|
LIGA = 2655971, // <liga>
|
|
SLASH_LIGA = 57686604, // </liga>
|
|
FRAC = 2598518, // <frac>
|
|
SLASH_FRAC = 57774681, // </frac>
|
|
|
|
// Attributes
|
|
NAME = 2875623, // <sprite name="Name of Sprite">
|
|
INDEX = 84268030, // <sprite index=7>
|
|
TINT = 2960519, // <tint=bool>
|
|
ANIM = 2283339, // <anim="first frame, last frame, frame rate">
|
|
MATERIAL = 825491659, // <font="Name of font asset" material="Name of material">
|
|
HREF = 2535353, // <a href="url">text to be displayed.</a>
|
|
ANGLE = 75347905, // <i angle="40">Italic Slant Angle</i>
|
|
|
|
// Named Colors
|
|
RED = 91635,
|
|
GREEN = 87065851,
|
|
BLUE = 2457214,
|
|
YELLOW = -882444668,
|
|
ORANGE = -1108587920,
|
|
BLACK = 81074727,
|
|
WHITE = 105680263,
|
|
PURPLE = -1250222130,
|
|
|
|
// Unicode Characters
|
|
BR = 2256, // <br> Line Feed (LF) \u0A
|
|
ZWSP = 3288238, // <zwsp> Zero Width Space \u200B
|
|
NBSP = 2869039, // <nbsp> Non Breaking Space \u00A0
|
|
SHY = 92674, // <SHY> Soft Hyphen \u00AD
|
|
|
|
// Alignment
|
|
LEFT = 2660507, // <align=left>
|
|
RIGHT = 99937376, // <align=right>
|
|
CENTER = -1591113269, // <align=center>
|
|
JUSTIFIED = 817091359, // <align=justified>
|
|
FLUSH = 85552164, // <align=flush>
|
|
|
|
// Prefix and Unit suffix
|
|
NONE = 2857034,
|
|
PLUS = 43,
|
|
MINUS = 45,
|
|
PX = 2568,
|
|
PLUS_PX = 49507,
|
|
MINUS_PX = 47461,
|
|
EM = 2216,
|
|
PLUS_EM = 49091,
|
|
MINUS_EM = 46789,
|
|
PCT = 85031,
|
|
PLUS_PCT = 1634348,
|
|
MINUS_PCT = 1567082,
|
|
PERCENTAGE = 37,
|
|
PLUS_PERCENTAGE = 1454,
|
|
MINUS_PERCENTAGE = 1512,
|
|
|
|
TRUE = 2932022,
|
|
FALSE = 85422813,
|
|
|
|
INVALID = 1585415185,
|
|
|
|
NORMAL = -1183493901, // <style="Normal">
|
|
DEFAULT = -620974005, // <font="Default">
|
|
}
|
|
|
|
/// <summary>
|
|
/// Defines the type of value used by a rich text tag or tag attribute.
|
|
/// </summary>
|
|
public enum TagValueType
|
|
{
|
|
None = 0x0,
|
|
NumericalValue = 0x1,
|
|
StringValue = 0x2,
|
|
ColorValue = 0x4,
|
|
}
|
|
|
|
public enum TagUnitType
|
|
{
|
|
Pixels = 0x0,
|
|
FontUnits = 0x1,
|
|
Percentage = 0x2,
|
|
}
|
|
|
|
/// <summary>
|
|
/// Commonly referenced Unicode characters in the text generation process.
|
|
/// </summary>
|
|
internal static class CodePoint
|
|
{
|
|
public const uint SPACE = 0x20;
|
|
public const uint DOUBLE_QUOTE = 0x22;
|
|
public const uint NUMBER_SIGN = 0x23;
|
|
public const uint PERCENTAGE = 0x25;
|
|
public const uint PLUS = 0x2B;
|
|
public const uint MINUS = 0x2D;
|
|
public const uint PERIOD = 0x2E;
|
|
|
|
public const uint HYPHEN_MINUS = 0x2D;
|
|
public const uint SOFT_HYPHEN = 0xAD;
|
|
public const uint HYPHEN = 0x2010;
|
|
public const uint NON_BREAKING_HYPHEN = 0x2011;
|
|
public const uint ZERO_WIDTH_SPACE = 0x200B;
|
|
public const uint RIGHT_SINGLE_QUOTATION = 0x2019;
|
|
public const uint APOSTROPHE = 0x27;
|
|
public const uint WORD_JOINER = 0x2060;
|
|
public const uint HIGH_SURROGATE_START = 0xD800;
|
|
public const uint HIGH_SURROGATE_END = 0xDBFF;
|
|
public const uint LOW_SURROGATE_START = 0xDC00;
|
|
public const uint LOW_SURROGATE_END = 0xDFFF;
|
|
public const uint UNICODE_PLANE01_START = 0x10000;
|
|
}
|
|
}
|