CAD关于文字样式添加文字样式操作(com接口c#语言)

被刻印的时光 ゝ 提交于 2019-12-02 15:07:48

下面代码,得到当前数据库中的文字样式表,然后向样式表中添加一个文字样表记录

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字体文字样式)添加文字,该函数详细接口说明参考:http://www.mxdraw.com/help/MxDrawXLib___DMxDrawX__AddTextStyle1@BSTR@BSTR@BSTR@DOUBLE.htm

比如VB代码

MxDrawX1.AddTextStyle1 "MyTextStyle", "italicc.shx", "gbcbig.shx", 0.7
MxDrawX1.TextStyle = "MyTextStyle"
MxDrawX1.DrawColor = 255
MxDrawX1.DrawText 0, 3000, "梦想绘图控件3.0 www.mxdraw.com", 100, 0, 0, 1

比如添加一个黑体字体的文字样式

'添加TureType字体
 MxDrawX1.AddTextStyle2 "MyTrueTypeStyle", "黑体", 0.7
 MxDrawX1.TextStyle = "MyTrueTypeStyle"
 MxDrawX1.DrawText 0, 3150, "梦想绘图控件3.0 www.mxdraw.com", 100, 0, 0, 1

效果展示:

addtxtstyle.png

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!