match te需要LISP程序
所有我需要一个LISP程序匹配文本属性。我喜欢用罗马语改变所有文字的大小和风格。txt尺寸3/32英寸,宽度因子。85、一键点击。
请帮忙。 文字高度是多少毫米?
这怎么可能是“匹配文本属性”Balji?
现在,如果你想把所有文字的高度改为3/32英寸,宽度改为0.85英寸
(defun c:BaljiEverybody(/ ss i e)
(if
(setq ss (ssget "_x" '((0 . "TEXT,MTEXT"))))
(repeat (setq i (sslength ss))
(setq e (vlax-ename->vla-object
(ssname ss (setq i (1- i)))))
(mapcar '(lambda (k j)
(vl-catch-all-error-p
(vl-catch-all-apply
'vlax-put
(list e k j))))
'("Height" "ScaleFactor")
'(0.094 0.85))
)))
欢迎回到塔尔瓦特
编辑:同时更改文字样式
....
(mapcar '(lambda (k j)
(vl-catch-all-error-p
(vl-catch-all-apply
'vlax-put
(list e k j))))
'("Height" "ScaleFactor" "StyleName")
'(0.094 0.85 "Romans"))
...
我认为你想要强制这些值的原因是有一些文本属性是“捏造的”
非常感谢pBe对我的朋友的欢迎。
现在试试这个草稿。
Removed
pBe,既然if函数不支持true或false检查,那么例程中需要函数Vl-catch-all-error-p吗?
大师:震惊:
感谢上帝,你理解我的问题。否则我必须打电话给你寻求帮助哎呀:我收到了一张满是多文本的表格。E、 g.具有多样式文本(罗马)123(罗马)456的一个值。
一个接一个地编辑是非常困难的。首先我想打电话给你这个问题,但后来我选择了这个论坛。很高兴再次在Lisp中看到我的名字。
非常感谢你的帮助。和往常一样。
原因:锁定层
层被锁定是有原因的,我将“解锁”留给用户。
很高兴它对你有用。还有其他方法可以修复“fudge”文本属性。如果你需要更多帮助,请大声呼喊,或者在我的电子邮件中给我发消息。我就在附近
别惹麻烦Balji
干杯
据我所知,vl-catch-all-apply可以传递可能发生的任何错误,例如锁定层,如果错误发生在本例中不需要的位置,vl-catch-all-error-p将返回T,只是想知道。 给我看看其他的方法
请
页:
[1]
2