梦想CAD控件COM接口文字样式

增加文字样式

用户可以增加文字样式到数据库,并设置其字体等属性,具体实现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("成功删除文字样式");
}

posted on 2019-05-22 16:55  梦想CAD控件  阅读(230)  评论(0)    收藏  举报

导航