下面代码,得到当前数据库中的文字样式表,然后向样式表中添加一个文字样表记录
C#代码:
private void AddTextStyle(String sNewTextStyleName){MxDrawApplication app = new MxDrawApplication();//返回数据库中的文字样式表对象MxDrawTextStyleTable txtStyleTable = app.WorkingDatabase().GetTextStyleTable();MxDrawTextStyleTableRecord txtStyle = txtStyleTable.GetAt(sNewTextStyleName, true);if(txtStyle != null){// 当前数据已经有该文字样。// 如果被删除,就反删除。txtStyle.SetProp("unErase", null);return;}//增加新的文字样式MxDrawTextStyleTableRecord mxtstr = txtStyleTable.Add(sNewTextStyleName);//设置样式的属性,如果文字样式设置了TrueType字体,就不会使用前面设置shx字体//参数一为turetype字体名 参数二为是否粗写 参数三为是否斜写 参数四为windows字符集 参数五暂没使用mxtstr.SetFont("黑体", false, false, 0, 0);//设置文字样式的高度mxtstr.textSize = 5;}
调用上面函数,增加"aa"文字样式
AddTextStyle("aa");
或者也可以这样
使用ocx.AddTextStyle1(添加线形字体文字样式),ocx.AddTextStyle2(添加TrueType字体文字样式)添加文字,该函数详细接口说明参考:/help/MxDrawXLib___DMxDrawX__AddTextStyle1@BSTR@BSTR@BSTR@DOUBLE.htm
比如VB代码
MxDrawX1.AddTextStyle1 "MyTextStyle", "italicc.shx", "gbcbig.shx", 0.7MxDrawX1.TextStyle = "MyTextStyle"MxDrawX1.DrawColor = 255MxDrawX1.DrawText 0, 3000, "梦想绘图控件3.0 ", 100, 0, 0, 1
比如添加一个黑体字体的文字样式
'添加TureType字体MxDrawX1.AddTextStyle2 "MyTrueTypeStyle", "黑体", 0.7MxDrawX1.TextStyle = "MyTrueTypeStyle"MxDrawX1.DrawText 0, 3150, "梦想绘图控件3.0 ", 100, 0, 0, 1
效果展示: