常规的unity text的斜体样式只有向右倾斜,突然策划让你把字体向左倾斜。text组件不带这种特性,怎么办?
先上显示效果:
(两个text定义不同的倾斜度)
实现原理是通过定义倾斜度,将提交的顶点信息的x坐标进行偏移。
下面是实现的方法:
1:定义显示的扩展类 Italic
[RequireComponent(typeof(Text))]
public class Italic : BaseMeshEffect
{
}
2:定义倾斜度字段
[SerializeField]
private float slope;
3:修改定点的倾斜度
public override void ModifyMesh(VertexHelper vh)
{
if (!IsActive()) { return; }
int count = vh.currentVertCount;
if (count == 0) { return; }
if (mVertexList == null) { mVertexList = new List<UIVertex>(); }
vh.GetUIVertexStream(mVertexList);
//Debug.LogError(JsonConvert.Se