明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1842|回复: 3

[讨论][求助]文字对齐方式

[复制链接]
发表于 2006-8-13 22:37 | 显示全部楼层 |阅读模式

以下是我在VBA开发时的文字录入的方法:

Function WZ(X0, Y0, AG1, TXT, TXTH, LAY1)
'定义标注文字方式

On Error Resume Next
Dim INP1(0 To 2) As Double
INP1(0) = X0: INP1(1) = Y0: INP1(2) = 0
Set OBJTXT = ThisDrawing.ModelSpace.AddText(TXT, INP1, TXTH)
OBJTXT.StyleName = "DXT"
OBJTXT.Layer = LAY1
OBJTXT.Rotation = AG1
Asc (Left(TXT, 1))
If Asc(Left(TXT, 1)) >= 48 And Asc(Left(TXT, 1)) <= 90 Then
    XX = Len(TXT) * TXTH / 40 * SCAL * 0.71 / 4
Else
    XX = (Len(TXT)) * TXTH / 40 * SCAL * 0.71 / 2
End If
If AG1 <> 0 Then
    INP1(0) = X0:   INP1(1) = Y0 + XX:  INP1(2) = 0
Else
    INP1(0) = X0 + XX: INP1(1) = Y0 + TXTH / 2: INP1(2) = 0
End If
OBJTXT.Rotate INP1, RAG

End Function

当需要输入文字时,适用如下代码:

Call WZ(TKBASEX + 20.8 * SCAL, TKBASEY + 19.6 * SCAL, 3.14159 * (-0.5), "数 量", 2.5 * SCAL, "TK")

可是目前有一个问题:要将文字的对正方式跟改为“调整”,该怎么操作??此时该如何指定“文字对齐  坐标”和“位置  坐标”?

发表于 2006-8-14 09:33 | 显示全部楼层
OBJTXT .Alignment = acAlignmentFit
OBJTXT .TextAlignmentPoint = INP1
 楼主| 发表于 2006-8-14 20:34 | 显示全部楼层

谢谢!依照楼上的方法,问题解决了!

发表于 2019-9-2 15:45 | 显示全部楼层
非常不错的代码,谢谢分享。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-19 17:33 , Processed in 0.264448 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表