找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3344|回复: 15

[原创]:让你的程序可以说话(免币!!!)

[复制链接]
发表于 2005-12-4 20:02:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
<P><FONT face=Verdana>;winxp测试通过比如(speek "how are you") <BR>(defun speek(str)<BR>&nbsp; (setq&nbsp; spi (vlax-create-object "Sapi.SpVoice"))<BR>&nbsp; (vlax-method-applicable-p spi "Speak")<BR>&nbsp; (vlax-invoke-method spi "Speak" str 3)<BR>&nbsp;)</FONT></P>
<P><FONT face=Verdana>;只有装了中文语音包下面这段代码才能完好运行.<BR>(defun c:speek(/ ss i)<BR>&nbsp; (setq ss (ssget (list(cons 0 "text"))))<BR>&nbsp; (setq i 0)<BR>&nbsp; (princ "\n输入要朗读的文字:")<BR>&nbsp; (repeat (sslength ss)<BR>&nbsp;&nbsp;&nbsp; (setq speekContent<BR>&nbsp;&nbsp;&nbsp; "&lt;VOICE REQUIRED='NAME=Microsoft Simplified Chinese'&gt;"<BR>&nbsp;&nbsp;&nbsp; )<BR>&nbsp;&nbsp;&nbsp; (setq speekContent<BR>&nbsp;&nbsp;&nbsp; (strcat speekContent<BR>&nbsp;&nbsp;&nbsp;&nbsp; (cdr (assoc 1 (entget (ssname ss i))))<BR>&nbsp;&nbsp;&nbsp;&nbsp; "&lt;/VOICE&gt;"<BR>&nbsp;&nbsp;&nbsp; )<BR>&nbsp;&nbsp;&nbsp; )</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp; (setq catchit (vl-catch-all-apply 'speek (list speekContent)))<BR>&nbsp;&nbsp;&nbsp; (if&nbsp;(vl-catch-all-error-p catchit)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (progn (princ "\n朗读文字时捕捉到错误:")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (princ (vl-catch-all-error-message catchit))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )<BR>&nbsp;&nbsp;&nbsp; )</FONT></P>
<P><FONT face=Verdana>&nbsp;&nbsp;&nbsp; (setq i (+ i 1))<BR>&nbsp; )<BR>)</FONT></P>
<P><FONT face=Verdana></FONT>&nbsp;</P>
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-12-4 20:42:37 | 显示全部楼层
  1. [FONT=courier new]
  2. ;;;只有装了中文语音包下面这段代码才能完好运行
  3. ;;;不支持中文
  4. (defun c:test (/ ss i txt catch)
  5.   (defun speek (str)
  6.     (setq spi (vlax-create-object "Sapi.SpVoice"))
  7.     (vlax-method-applicable-p spi "Speak")
  8.     (vlax-invoke-method spi "Speak" str 3)
  9.   )
  10.   (princ "\n请选择要朗读的文字 : ")
  11.   (if (setq ss (ssget '((0 . "*TEXT"))))
  12.     (progn
  13.       (setq i -1)
  14.       (repeat (sslength ss)
  15.         (setq txt (cdr (assoc 1 (entget (ssname ss (setq i (1+ i))))))
  16.               cat (vl-catch-all-apply 'speek (list txt))
  17.         )
  18.         (if (vl-catch-all-error-p cat)
  19.           (progn (princ "\n朗读文字时捕捉到错误 : ")
  20.                  (princ (vl-catch-all-error-message cat))
  21.           )
  22.         )
  23.       )
  24.     )
  25.   )
  26.   (princ)
  27. )
  28. [/FONT]

功能:朗读CAD中的文本(不支持中文)
命令:wbld  (文本朗读)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-5 09:28:02 | 显示全部楼层
呵呵,还真的能说话呀。
修改下就可以帮俺校对图纸了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-5 11:50:47 | 显示全部楼层
最初由 它山之石 发布
[B]呵呵,还真的能说话呀。
修改下就可以帮俺校对图纸了。 [/B]


你的程序都能校对出哪些错误来啊?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-5 15:26:34 | 显示全部楼层
1、俺的机子能读中文呀。
2、不同的程序可以校对不同的错误呀。
3、这个东东可以让CAD也变得“有声有色”了。好呀!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1915个

财富等级: 堆金积玉

发表于 2005-12-5 17:18:53 | 显示全部楼层
在安装了SimpChinese Speech Package.msi后,就可以朗读中文了,但是英文却变成了字母朗读了,不能两全其美。还要记得在[控制面板]中->语音选项中将Microsoft Simplified Chinese 作为缺省语音。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-5 20:10:24 | 显示全部楼层
<FONT face=Verdana>
最初由 zhang8755 发布<BR>[B]在安装了SimpChinese Speech Package.msi后,就可以朗读中文了,但是英文却变成了字母朗读了,不能两全其美。还要记得在[控制面板]中-&gt;语音选项中将Microsoft Simplified Chinese 作为缺省语音。 [/B]
<BR>不一定要指定缺省语音的.如果你要发音中文,只要把要朗读的文字前后分别加上 "&lt;VOICE REQUIRED='NAME=Microsoft Simplified Chinese'&gt;"和"&lt;/VOICE&gt;"就可以了.不加的就话就按缺省的英文发音了.<BR>你只要在程序里判断是中文还是英文就可以分别对待了.</FONT>
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-5 22:58:35 | 显示全部楼层
最初由 xyp1964 发布
[B][CODE]
;;;只有装了中文语音包下面这段代码才能完好运行
;;;不支持中文
(defun c:test (/ ss i txt catch)
  (defun speek (str)
    (setq spi (vlax-create-object "Sapi.SpVoice"))
    ... [/B]


呵呵,老手了,用str保留字做参数?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-7 07:58:23 | 显示全部楼层
这样于活是一件挺有意思的事,对系统有什么要求?256MB内存够吗?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-7 08:48:22 | 显示全部楼层
太牛了,哪个做个动画贴上来瞧瞧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-10 13:52:06 | 显示全部楼层
各位功夫很深,哪位有实用版本?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-10 14:17:02 | 显示全部楼层
我笨笨,具体怎么用还是没有搞懂
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-12-10 15:39:44 | 显示全部楼层
可以用,非常不错,那个pdf文件也可以朗读的,你再那个pdf视图菜单下就有个朗读功能,看cad电子版太累,用朗读不错,就是默认的朗读速度太慢了,可以再控制面板里面把速度调快.大家可以试试
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 57个

财富等级: 招财进宝

发表于 2005-12-12 23:15:49 | 显示全部楼层
牛人
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-1-6 15:59:19 | 显示全部楼层
R14能用么?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-12-28 04:21 , Processed in 0.499361 second(s), 59 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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