增加文字样式
用户可以增加文字样式到数据库,并设置其字体等属性,具体实现c#代码如下:
private void CreateText()
{
MxDrawApplication app = new MxDrawApplication();
//返回数据库中的文字样式表对象
MxDrawTextStyleTable mxtst = app.WorkingDatabase().GetTextStyleTable();
//增加新的文字样式
MxDrawTextStyleTableRecord mxtstr = mxtst.Add("duanceng");
//设置样式
//设置文字的TrueType字体,如果文字样式设置了TrueType字体,就不会使用前面设置shx字体
//参数一为turetype字体名 参数二为是否粗写 参数三为是否斜写 参数四为windows字符集 参数五暂没使用
mxtstr.SetFont("黑体", false, false, 0, 0);
//返回文字的高度
mxtstr.textSize = 5; //返回数据库中的文字样式表对象
//设置为当前文字样式 app.WorkingDatabase().CurrentlyTextStyle = "duanceng";
}
得到文字样式
用户可以得到所有文字样式名,具体实现c#代码如下:
private void GetAllText()
{
MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
//返回数据库中的文字样式表对象
MxDrawTextStyleTable mxtst = database.GetTextStyleTable();
//创建一个遍历文字样式表中所有文字样式的遍历器
MxDrawTextStyleTableIterator iter = mxtst.NewIterator();
if (iter == null)
return;
string sRet = null;
//移动当前遍历器位置
for (; !iter.Done(); iter.Step(true, false))
{
//返回遍历器当前位置的记录
MxDrawTextStyleTableRecord spTextStyleRec = iter.GetRecord();
//符号表记录名属性
sRet = sRet + ',' + spTextStyleRec.Name;
}
MessageBox.Show(sRet);
}
删除文字样式
用户可以删除某个文字样式,具体实现c#代码如下:
private void DelText()
{
string txt = textBox1.Text; MxDrawDatabase database = (MxDrawDatabase)axMxDrawX1.GetDatabase();
//返回数据库中的文字样式表表对象
MxDrawTextStyleTable TextStyleTable = database.GetTextStyleTable();
//得到层表中的文字样式表对象
MxDrawTextStyleTableRecord TextStyleRec = TextStyleTable.GetAt(txt, false);
if (TextStyleRec == null)
return;
//删除对象
TextStyleRec.Erase();
MessageBox.Show("成功删除文字样式");
}