[求助]如何求出DBText单行文本的长度?? 已解决
本帖最后由 作者 于 2009-10-19 15:25:18 编辑 <br /><br /> <p>查了很多资料,说是用 DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X 的很多,不过这种方法得出的值貌似不是DBText的长度。 那么如何才能正确得出DBText中文本的长度呢?还有 如何得出 DBText中文本的宽度比例?</p> <p>取GeometricExtents要先设置DBText的角度为0</p><p>宽度比例:<a href="mk:@MSITStore:C:\Documents%20and%20Settings\Administrator\桌面\arxmgd.chm::/Autodesk_AutoCAD_DatabaseServices_DBText_WidthFactor.html">WidthFactor</a> </p> 本帖最后由 作者 于 2009-10-19 15:24:33 编辑 <br /><br /> <p>比如 我用的DBText的 <a href="mk:@MSITStore:C:\Documents%20and%20Settings\Administrator\桌面\arxmgd.chm::/Autodesk_AutoCAD_DatabaseServices_DBText_WidthFactor.html">WidthFactor</a> =1.0 ,而直到DBText中字符串的个数也就是string的长度len,DBText的Height属性值是height,如何求出DBText的长度呢,直接用 double length = <a href="mk:@MSITStore:C:\Documents%20and%20Settings\Administrator\桌面\arxmgd.chm::/Autodesk_AutoCAD_DatabaseServices_DBText_WidthFactor.html">WidthFactor</a> * len * height吗??</p><p>已解决 果然是 double length = <a href="mk:@MSITStore:C:\Documents%20and%20Settings\Administrator\桌面\arxmgd.chm::/Autodesk_AutoCAD_DatabaseServices_DBText_WidthFactor.html">WidthFactor</a> * len * height</p> <p>字体样式不一样,DBText的长度也是不一样的</p> 怎样获取不同样式的字体长度? <p>二楼不是有解决方法么</p> double length = <a href="mk:@MSITStore:C:\Documents%20and%20Settings\Administrator\桌面\arxmgd.chm::/Autodesk_AutoCAD_DatabaseServices_DBText_WidthFactor.html"><font color="#000000">WidthFactor</font></a> * len * height 这样不行的,如果是字母,数子汉字等混在一起,这样就不能测出确切的长度,取文字的范围点应该更精确一些 <p>那就</p><p>DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X</p> <p>问楼上版主:若文字是斜的的呢?呵呵!(Sorry!之前没有看到版主在二楼的回复)</p><p>DBText 用 DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X应该没有问题,</p><p>但若是MText好象就问题多多!</p> Math.Sqrt(Math.Pow((DBText.GeometricExtents.MaxPoint-DBText.GeometricExtents.MinPoint).Length,2)-Math.Pow(DBText.Height,2))
页:
[1]