protected Element AddFontElement( exBitmapFont _srcFontInfo, exBitmapFont _destFontInfo, exBitmapFont.CharInfo _charInfo )
{
exAtlasInfo.Element el = new exAtlasInfo.Element();
el.isFontElement = true;
el.srcFontInfo = _srcFontInfo;
el.destFontInfo = _destFontInfo;
el.charInfo = _charInfo;
el.trimRect = new Rect( _charInfo.x, _charInfo.y, _charInfo.width, _charInfo.height );
el.rotated = false;
el.trim = true;
el.atlasInfo = this;
el.texture = _srcFontInfo.pageInfos[0].texture;
el.coord[0] = 0;
el.coord[1] = 0;
exBitmapFont.CharInfo destCharInfo = el.destFontInfo.GetCharInfo(el.charInfo.id);
if ( destCharInfo != null ) {
destCharInfo.id = el.charInfo.id;
destCharInfo.x = el.charInfo.x;
destCharInfo.y = el.charInfo.y;
destCharInfo.width = el.charInfo.width;
destCharInfo.height = el.charInfo.height;
destCharInfo.xoffset = el.charInfo.xoffset;
destCharInfo.yoffset = el.charInfo.yoffset;
destCharInfo.xadvance = el.charInfo.xadvance;
destCharInfo.page = el.charInfo.page;
destCharInfo.uv0 = el.charInfo.uv0;
}
else {
Debug.LogError ( "can't not find char info with ID " + el.charInfo.id );
}
elements.Add(el);
needRebuild = true;
EditorUtility.SetDirty(this);
return el;
}