明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2642|回复: 4

[已解决]求助,如何取得未加入数据库DBText的外框?

[复制链接]
发表于 2011-11-23 21:14:43 | 显示全部楼层 |阅读模式
本帖最后由 badboy518 于 2011-11-24 12:00 编辑

在学习JIG时发现,当文字没有加入到数据库中时,Bounds的maxpoint 与minpoint
以及GeometricExtents.MaxPoint
        GeometricExtents.MinPoint
都是与插入点相同的。
我想做到:在文字下方加一条下划线,与文本同宽。
请问一下,如何才能得到文字的宽度?
发表于 2011-11-23 22:13:10 | 显示全部楼层
为什么不考虑加入数据库呢,这样的效果又如何
  1. [CommandMethod("t7")]
  2.         public void Test7()
  3.         {
  4.             DBText testText = new DBText();
  5.             testText.TextString = "WeltionTools";
  6.             testText.Position = new Point3d(0, 0, 0);
  7.             
  8.             Transaction tr = Application.DocumentManager.MdiActiveDocument.TransactionManager.StartTransaction();
  9.             using (tr)
  10.             {
  11.                 BlockTableRecord space = tr.GetObject(HostApplicationServices.WorkingDatabase.CurrentSpaceId, OpenMode.ForWrite) as BlockTableRecord;

  12.                 space.AppendEntity(testText);
  13.                 tr.AddNewlyCreatedDBObject(testText, false);
  14.                 Extents3d textExtents = testText.GeometricExtents;
  15.                 Line line = new Line();
  16.                 line.StartPoint = textExtents.MinPoint;
  17.                 line.EndPoint = textExtents.MaxPoint;
  18.                 space.AppendEntity(line);
  19.                 tr.AddNewlyCreatedDBObject(line, true);
  20.                
  21.                 tr.Commit();
  22.             }
  23.         }
 楼主| 发表于 2011-11-23 23:05:25 | 显示全部楼层
有劳,我看了一下,是加入到图形数据库中后再调用 。这样确实可以做到。
但是Jig中运行效率太差了些。不知能否有更好的办法
发表于 2011-11-24 00:00:38 | 显示全部楼层
你的jig到底是想达到什么效果,或者把你的代码发上来大家帮你优化一下
 楼主| 发表于 2011-11-24 12:00:00 | 显示全部楼层
已解决。将基本属性参数写齐全就可以了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 18:43 , Processed in 0.174210 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表