答案并不完全正确,但看看大量的多行文字
应用(RO)=#
; 高度=30.0
; 层=“CABLE\u UNDERGROUND\u ANNO”
; 线间距=50.0
; 线间距因子=1.0
; 线间距样式=1
; 线型=“ByLayer”
; 线型比例=1.0
; 线宽=-1
; 正常=(0.0 0.0 1.0)
; ObjectName(RO)=“AcDbMText”
; PlotStyleName=“颜色1”
; 旋转=0.0
; StyleName=“标准”
; TextString=“24FIB SPSP DSLT\\P1356.00m\\PDXVL\U FT2:1-12\\PBD:13-24\\P”
; 宽度=0.0
多行文字或文字具有高度,左上角为已知间距
接下来读取字符串并获得第一行的字符数,这样就可以计算出一个新的插入点
放置多行文字并旋转
- ; this can be done in a couple of ways is step 1.
- ; done purposely as pick two points not a line
- (defun C:T2pts ( / pt1 pt2 ang tobj vlobj)
- (SETQ PT1 (GETPOINT "\nPick 1st pt" ))
- (SETQ PT2 (GETPOINT "\nPick 2nd pt" ))
- (setq ang (angle pt1 pt2))
- (SETQ TOBJ (ENTSEL "\nPick Text"))
- (setq vlobj (vlax-ename->vla-object (car tobj)))
- (vlax-put-property vlobj "Rotation" ang)
- )
- (C:T2pts)
- step 2 have to have a think about that.
|