图层layer 0是 HZ字体,
选择集选的文本是romans字体,字体高度为3,但为什么用
Height = objText.Height 或者Height = TextHeight(objString)
得到的Height都不是3,而是510,很奇怪?(由于CAD是2004,用不了GetTextHeight())
如下代码供参考:
'过滤组码和过滤值
Dim FilterType(0) As Integer Dim FilterData(0) As Variant
FilterType(0) = 0 FilterData(0) = "Text" '只选择文本对象
ssetObj.Select mode, point1, point2, FilterType, FilterData '选择矩形窗口内对象(acselectionsetwindow)
'循环每个被选择的实体 Dim PickedObjs As AcadEntity For Each PickedObjs In ssetObj PickedObjs.Color = acRed '可将所有被选择实体将变为红色
Set objText = PickedObjs '将PickedObjs实体对象赋值给objText文本对象 objString = objText.textString '得到每个实体对象的文本内容 'MsgBox objString '在屏幕上显示文本内容,测试时用 'Height = objText.GetTextHeight(objString) '返回指定行类型的文字高度。(2005新增) Height = objText.Height '得到字体的高度 'Height = TextHeight(objString) '得到字体的高度 MsgBox Height
|