|
高级会员
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
|
【转帖】[求助]在04中,怎样获取文字的包围盒?
[求助]在04中,怎样获取文字的包围盒?
[求助]在04中,怎样获取文字的包围盒?
在04中,怎样获取文字的包围盒?
一个文字字符串可以得到acdbtext,可以取得文字的插入点,还有文字的高
但文字的宽,和文字之间的间距不知道怎么求,
如果能求得那就能得到一个包围盒了。
请大家帮帮忙!
自行解决
void printacdbtextbox(const acdbtext *ptext)
{
acdbobjectid styleid = ptext->textstyle();
acgitextstyle gitextstyle;
fromacdbtextstyle(gitextstyle, styleid);
acgepoint2d extminpt, extmaxpt;
gitextstyle.extentsbox(ptext->textstring(), false, -1, false, extminpt, extmaxpt);
acutprintf(_t("extminpt = (%f, %f)\n"), extminpt.x, extminpt.y);
acutprintf(_t("extmaxpt = (%f, %f)\n"), extmaxpt.x, extmaxpt.y);
}
extminpt和extmaxpt就可以组成一个包围盒。
那文字要是一个斜的呢?这样未必准确
acedtextbox
用这个不好吗?
路漫漫其修远兮......
把文字复制到acdbtext再计算包围盒
|