如何得到text的长度?刚开始学lisp,就想先编一个给文字(text)加下划线的,遇到的困难是不知道如何得到文字的长度(或者文字右下角的坐标)。非常感谢能给点帮助
如何得到text的长度?
刚开始学lisp,就想先编一个给文字(text)加下划线的,遇到的困难是不知道如何得到文字的长度(或者文字右下角的坐标)。
非常感谢能给点帮助
2楼
(Vlax-Invoke-Method (Vlax-Ename->Vla-Object (car (entsel))) 'GetBoundingBox 'a1 'a2)
(setq b1 (vlax-safearray->list a1))
(setq b2 (vlax-safearray->list a2))
(setq l (- (car b1 ) (car b2)))
回复
3楼
LISP可以用TEXTBOX函数;
VL可用楼上的GETBOUNDINGBOX方法;
回复
4楼
直接CH就可以查看字的长度
[
本帖最后由 xuhuai714 于 2009-8-30 08:42 编辑 ]
回复
5楼
要简单的话,直接可以使用:字高 * 字数 * 宽高比
回复
6楼
为什么不给yitian2加分?
回复
7楼
学习了 。。。。。。。。。。。
回复
8楼
不要恶意灌水
不妥,当文字角度为非零度时,得出来的结果是错误的。一试便知。
二楼不是我狂,我觉得你还是嫩了点。
(defun c:tt ()
(vl-load-com)
(Vlax-Invoke-Method
(Vlax-Ename->Vla-Object (car (entsel)))
'GetBoundingBox
'a1
'a2
)
(setq b1 (vlax-safearray->list a1))
(setq b2 (vlax-safearray->list a2))
(command "._RECTANG" "_NON" b1 "_NON" b2)
)
建议用textbox。
回复
9楼
收回楼上的话。Sorry!
[
本帖最后由 carrot1983 于 2009-12-19 20:31 编辑 ]
回复