如何让CAD点那个文字朗读一下
(setq sapi (vlax-create-object "Sapi.SpVoice"))(vlax-invoke sapi "Speak" "本工程依据抗震规范设计 !" 0)
各位好,有两年时间没有发铁了,有什么办法调用上面的在CAD里点那个文字就朗读一遍
各位有什么好办法不
(defun c:WBLD (/ ss i txt catch)
(defun speek (str)
(setq spi (vlax-create-object "Sapi.SpVoice"))
(vlax-method-applicable-p spi "Speak")
(vlax-invoke-method spi "Speak" str 3)
)
(princ "\n请选择要朗读的文字 : ")
(if (setq ss (ssget '((0 . "*TEXT"))))
(progn
(setq i -1)
(repeat (sslength ss)
(setq txt (cdr (assoc 1 (entget (ssname ss (setq i (1+ i))))))
cat (vl-catch-all-apply 'speek (list txt))
)
(if (vl-catch-all-error-p cat)
(progn (princ "\n朗读文字时捕捉到错误 : ")
(princ (vl-catch-all-error-message cat))
)
)
)
)
)
(princ)
) 测试可以用,本质是调用VBS的方法。
新建一个txt文档,复制下面一行的内容到文档内:
CreateObject("SAPI.SpVoice").Speak "朗读测试"
保存,关闭文档,将文档后缀的.txt改为.vbs,双击运行就会朗读。
不太熟悉这种用法,不过最后应该释放一下创建的对象吧 satan421 发表于 2019-5-8 11:44
测试可以用,本质是调用VBS的方法。
新建一个txt文档,复制下面一行的内容到文档内:
调用的SAPI.SpVoice不是vbs 我的铁快垫底了 完了抄不全,不能用呀 居然还可以朗读。长见识了 这个厉害了,必须收藏 真的能读嘛,好像不成功。 朗读???第一次听说。还能这样玩啊。。
页:
[1]
2