[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[技术讨论] powershell自动朗读听写脚本实例

因为要抄写大量的学习强国之类资料。反复抬头看电脑屏幕、低头于笔记本上抄写。
资料文本存于read.txt,遂写一段脚本用于朗读听写,自娱自乐。
分享到论坛,路过的朋友可以帮忙润色就更好了。
  1. add-type -assemblyname system.speech
  2. $speaker=new-object system.speech.synthesis.speechsynthesizer
  3. $speaker.rate=-5
  4. $speaker.volume=100
  5. #添加类型,定义语音速率音量。
  6. function wait-key{
  7. #10秒内获取按键,根据按键决定重复朗读或者暂停或者快速跳到下一句。
  8.     while($counter++ -lt 10){
  9.         if($host.ui.rawui.keyavailable){
  10.             $null=$key=$host.ui.rawui.readkey("noecho,includekeyup").character
  11.             break
  12.         }
  13.         else{
  14.             write-host $counter
  15.             sleep -s 1            
  16.         }
  17.     }
  18. return($key)
  19. }
  20. $txt=gc read.txt
  21. $txt.split(',。!;?')|%{
  22.     $_
  23.     $speaker.speak($_)
  24.     if($_.length -lt 6){
  25.         sleep -s 5
  26. #短句子,停顿5秒用于抄写
  27.     }else{
  28.         $key=wait-key
  29. #长句子,停顿10秒用于抄写。
  30.         if($key){
  31. #10秒等待期间,按数字暂停,按点号跳过等待,其他键重复上一句。
  32.             if($key -match '^\d$'){
  33.                 cmd /c pause
  34.             }elseif($key -eq "."){
  35.                 $key
  36.             }else{
  37.                 $speaker.speak($_)
  38.                 sleep -s 5
  39.             }
  40.         rv key
  41.         }
  42.     }
  43. }
复制代码
3

评分人数

    • went: 感谢分享技术 + 1
    • 5i365: 技术牛X, 乐于分享技术 + 1
    • idwma: 感谢分享技术 + 1

返回列表