别晨 发表于 2006-10-31 19:38:00

[求助]如何更改AcDbText对正方式为调整?

假设有一个AcDbText *pText,对齐方式为左对齐,即竖向为 AcDb::kTextBase ,水平为: AcDb::kTextLeft,要改为调整方式:
                pText->setHorizontalMode(AcDb::kTextFit);
pText->setAlignmentPoint(pt);

这个pt点的坐标怎么计算?
或者有其它方法?

谢谢

yang611 发表于 2006-10-31 21:26:00

ads_point startPt;
acedGetPoint(NULL,"选择文本插入点\n",startPt);//选择点
不知道合不合理,我是这样做的!

别晨 发表于 2006-10-31 23:47:00

不好意思,问题没表述清楚,文本是已经存在的,对齐方式是左对齐,现在要改为调整方式:AcDb::kTextFit,需要有两个点,一个是组码10的点,这个是插入点,左对齐这个点是存在的,另一个是组码11的点,改调整方式需要对这个点赋值,现在我不知道如何计算这个点,还是有其它更好的方法能把左对齐改为调整.

c735023723 发表于 2012-8-12 18:08:00

我和2楼用的方法相同

luowy 发表于 2012-8-13 16:12:00

在没有定义对齐方式的时候, acdbText的位置就是由setPosition确定,但是 当确定了对齐方式的时候,就要用对起点来确定其位置, 对应的函数是SetAlignmentPoint
页: [1]
查看完整版本: [求助]如何更改AcDbText对正方式为调整?