roycecim 发表于 2009-10-19 11:05:00

[求助]如何求出DBText单行文本的长度?? 已解决

查了很多资料,说是用DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X 的很多,不过这种方法得出的值貌似不是DBText的长度。 那么如何才能正确得出DBText中文本的长度呢?还有 如何得出 DBText中文本的宽度比例?

雪山飞狐_lzh 发表于 2009-10-19 11:08:00

取GeometricExtents要先设置DBText的角度为0
宽度比例:

roycecim 发表于 2009-10-19 13:12:00


比如 我用的DBText的=1.0 ,而直到DBText中字符串的个数也就是string的长度len,DBText的Height属性值是height,如何求出DBText的长度呢,直接用 double length =* len * height吗??
已解决 果然是 double length =* len * height

雪山飞狐_lzh 发表于 2009-10-19 16:29:00

字体样式不一样,DBText的长度也是不一样的

ooo 发表于 2009-10-27 16:35:00

怎样获取不同样式的字体长度?

雪山飞狐_lzh 发表于 2009-10-27 20:11:00

二楼不是有解决方法么

houlinbo 发表于 2010-1-5 16:11:00

double length =    * len * height    这样不行的,如果是字母,数子汉字等混在一起,这样就不能测出确切的长度,取文字的范围点应该更精确一些

雪山飞狐_lzh 发表于 2010-1-5 23:01:00

那就
DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X

sieben 发表于 2010-1-17 19:26:00

问楼上版主:若文字是斜的的呢?呵呵!(Sorry!之前没有看到版主在二楼的回复)
DBText 用 DBText.GeometricExtents.MaxPoint.X - DBText.GeometricExtents.MinPoint.X应该没有问题,
但若是MText好象就问题多多!

l510319004 发表于 2012-11-15 13:53:00

Math.Sqrt(Math.Pow((DBText.GeometricExtents.MaxPoint-DBText.GeometricExtents.MinPoint).Length,2)-Math.Pow(DBText.Height,2))
页: [1]
查看完整版本: [求助]如何求出DBText单行文本的长度?? 已解决