马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
在VBA中,如果重新对文本对象设置对齐方式,那么当没有重新指定对齐点时,这个对齐点将会自动设置为原点坐标。
- [FONT=courier new]
- Sub Example_AddText()
- ' 这个例子展示了在模型空间创建单行文字对象。
- Dim textObj As AcadText
- Dim textString As String
- Dim insertionPoint(0 To 2) As Double
- Dim height As Double
-
- ' 定义单行文字对象
- textString = "Hello, World."
- insertionPoint(0) = 2: insertionPoint(1) = 2: insertionPoint(2) = 0
- height = 0.5
-
- ' 在模型空间创建单行文字对象
- Set textObj = ThisDrawing.ModelSpace.AddText(textString, insertionPoint, height)
-
- ' 设置单行文字对象的对齐方式
-
- textObj.Alignment = acAlignmentMiddleCenter
-
- End Sub
- [/FONT]
解决方法:变更文本对象的对齐方式后,重新设置文本对象的对齐点。
- [FONT=courier new]
- Sub Example_AddText()
- ' 这个例子展示了在模型空间创建单行文字对象。
- Dim textObj As AcadText
- Dim textString As String
- Dim insertionPoint(0 To 2) As Double
- Dim height As Double
-
- ' 定义单行文字对象
- textString = "Hello, World."
- insertionPoint(0) = 2: insertionPoint(1) = 2: insertionPoint(2) = 0
- height = 0.5
-
- ' 在模型空间创建单行文字对象
- Set textObj = ThisDrawing.ModelSpace.AddText(textString, insertionPoint, height)
-
- ' 设置单行文字对象的对齐方式
-
- textObj.Alignment = acAlignmentMiddleCenter
-
- '重新设置单行文字对象的对齐点
- textObj.TextAlignmentPoint = insertionPoint
- End Sub
- [/FONT]
|