public object CreateFont(string fontName, float emHeight, bool bold, bool italic, StringAlignment alignment) { TextSymDefHorizAlignment fontAlign; TextSymDef symdef = new TextSymDef("Description: text", GetOcadId(), TextSymDef.PreferredSymbolKind.NormalText, null); if (alignment == StringAlignment.Far) fontAlign = TextSymDefHorizAlignment.Right; else if (alignment == StringAlignment.Center) fontAlign = TextSymDefHorizAlignment.Center; else fontAlign = TextSymDefHorizAlignment.Left; symdef.SetFont(fontName, Geometry.TransformDistance(emHeight, currentTransform), Util.GetTextEffects(bold, italic), color, Geometry.TransformDistance(emHeight * 1.1F, currentTransform), 0, 0, 0, null, 0, 1F, fontAlign, TextSymDefVertAlignment.TopAscent); symdef.ToolboxImage = MapUtil.CreateToolboxIcon(Properties.Resources.DescText_OcadToolbox); map.AddSymdef(symdef); return symdef; }
protected virtual SymDef CreateSymDef(Map map, SymColor symColor, SymColor whiteColor) { // Find a free id. string symbolId = map.GetFreeSymbolId(OcadIdIntegerPart); TextSymDef symdef = new TextSymDef(SymDefName, symbolId, TextSymDef.PreferredSymbolKind.NormalText, null); symdef.SetFont(fontName, emHeight, Util.GetTextEffects(fontStyle), symColor, emHeight, 0, 0, 0, null, 0, 1F, TextSymDefHorizAlignment.Left, TextSymDefVertAlignment.TopAscent); if (outlineWidth > 0) { TextSymDef.Framing framing = new TextSymDef.Framing() { framingColor = whiteColor, framingStyle = TextSymDef.FramingStyle.Line, lineStyle = LineStyle.Rounded, lineWidth = outlineWidth }; symdef.SetFraming(framing); } symdef.ToolboxImage = MapUtil.CreateToolboxIcon(Properties.Resources.Number_OcadToolbox); map.AddSymdef(symdef); return symdef; }