当前位置:知识库 / C#开发 / 详情
插入图块前如何修改图块文字?
修改图块文字
C#开发|冯美娟|2019-02-26 11:14
回答:
             // 插入块的块名。
            String sBlkName = "MyBlkName";

            // 把要插入的块文件引入到控件数据库中。
            String sBlkFile = axMxDrawX1.GetOcxAppPath() + "\\Blk\\attribblock.dwg";
            axMxDrawX1.InsertBlock(sBlkFile, sBlkName);
            // 得到当前应用对象
            MxDrawApplication app = new MxDrawApplication();

            // 取到控件数据库
            MxDrawDatabase database = app.WorkingDatabase();

            // 得到块表对象
            MxDrawBlockTable blkTable = database.GetBlockTable();

            // 当前块表中是否已经有名为sBlkName的块表记录
            MxDrawBlockTableRecord blkRec = blkTable.GetAt(sBlkName, true);
            if (blkRec == null)
            {
                // 证明InsertBlock函数失败,没有成功把文件插入数据库中。
                return;
            }

            // 创建一个用于遍历块表遍历器
            MxDrawBlockTableRecordIterator iter = blkRec.NewIterator();
            if (iter == null)
                return;

            for (; !iter.Done(); iter.Step(true, false))
            {
                // 得到遍历器当前的实体
                MxDrawEntity ent = iter.GetEntity();
                if (ent == null)
                    continue;
                if (ent.ObjectName == "McDbText")
                {
                    // 当前实体是一个文字
                    MxDrawText text = (MxDrawText)ent;
                    // 修改文字内容为 "MyContent"
                    text.TextString = "MyContent";
                }
            }

            // 创建块引用,把图块插入到当前空间,并显示。
            axMxDrawX1.DrawBlockReference(0, 0, sBlkName, 1.0, 0.0);
相关问题
在c#中如何设置图层亮度?
如何导出黑白色的pdf?
如何由闭合区域内部一点绘制填充对象?
在c#如何插入块图?
怎么获取光标相对窗口的坐标呢?
能不能修改原点坐标?
如何调用导角命令,并返回导角的圆弧对象?
如何调用移动命令?
如何读取属性块?
打碎块的使用场景有哪些呢?
梦想CAD是专业的CAD插件(控件),可轻松在网页、手机及BS/CS程序中浏览编辑DWG文件,不需安装AutoCAD即可运行。经十余年累积已非常稳定可靠,有关键的空间搜索算法,并使用汇编优化,可同时处理50万级实体,有非常高的图形显示和处理效率。
联系我们
技术TEL:400-888-5703
185-8173-1060
客服I QQ: 3570505660
技术I QQ: 827867134
技术II QQ:6884123
VIP服务购买
销售TEL:156-8136-8971
销售QQ:710714273
用户交流
控件QQ交流群1:73281982
控件QQ交流群2:112199959
MxCAD软件群 1:515771658
技术I:QQ
827867134
客服I:QQ
3570505660
销售QQ
710714273
联系电话400-888-5703