半夜看小说伤眼睛怎么办?

不少人喜欢看小说,尤其喜欢把小说的txt文件下载到手机,然后一直看到睡觉前。

 

一边看一边劝自己:看完了这段马上就睡觉。然而看到精彩的地方终究是欲罢不能。

 

关了灯躺在床上继续看,直到困的握不住手机,pia的砸到自己脸上才睡着。

 

第二天早上,感觉眼睛干涩、灼热、异物感、看东西模糊,还伴有头痛和颈椎不适。

 

信誓旦旦的说以后晚上一定不看小说了。然并卵,第二天晚上照样重复昨天的故事。

 

因此,视力直线下降,戴上眼镜都看不清斗大的字。

 

(爱熬夜看小说的朋友看下来,敢不敢测一下视力?) 

 

 

那么,有没有什么办法既能看小说,又能不伤眼睛?

 

要是有人帮把小说读出来不就行了么?

 

找人读是不太可能的了,让机器读吧。

 

下面3M君祭出“除了不能生孩子,其它事情都能干”的大杀器Matlab,来实现这个功能。 

 

1. Matlab调用语音

程序其实很简单,只有两行。

 

原理是通过SpVoice对象调用TTS引擎,从而实现朗读功能。SpVoice类是支持语音合成(TTS)的核心类。)

 

比如,如果要读《明朝那些事》第一段,代码是:

Txt=actxserver('SAPI.SpVoice');

Txt.Speak('一切的事情都从1328 年的那个夜晚开始,农民朱五四的妻子陈氏生下了一个男婴,大家都知道了,这个男婴就是后来的朱元璋。');

 

有童靴说,我的小说很长,是一个5Mtxt文件,总不能把它们全部复制粘贴到Txt.Speak的括号里面吧?

 

说的有道理。那我们就再加几行语句,先把这个txt文件读入到内存,然后再朗读就好。

 

假如你的小说文件名是novel.txt,那么下面的matlab代码就可以实现机器自动阅读:

 

%清除其它变量并清屏

clear

clc

 

%读入小说文件

fidnovel = fopen('novel.txt','r');

novel=fgets(fidnovel);

 

%开始朗读

Txt=actxserver('SAPI.SpVoice');

Txt.Speak(novel);

 

%读完之后关闭文件

fclose(fidnovel);

  

2. 调整速度和音量

刚才那个童靴又问:上面语句确实是可以实现小说朗读,但读的太快了我赶不上,怎么把语速调慢?

 

好问题,SpVoice类有个Rate属性,用于控制阅读速度。

 

取值范围为-10+10。数值越大,速度越快。

 

因此在朗读的这一块语句里面的最后,加一个控制语速的属性参数Txt.Rate就好了:

 

%开始朗读

Txt=actxserver('SAPI.SpVoice');

Txt.Speak(novel);

Txt.Rate=1;

 

另外,SpVoice类还有个Volume属性,用于控制音量大小。

 

取值范围为0100。数值越大,音量越大。

 

实现方法类似Rate属性。

 

3. 大妈还是萝莉?

刚才那个童靴又问了:给我读小说的声音是一个大妈的声音,能不能换成甜美的小萝莉声音?

 

还小萝莉的声音,大半夜的你想让萝莉说什么?想干什么坏事如实招来!

 

好吧,人生已经如此的艰难,有些事情就不给你拆穿了。

 

其实在电脑的“控制面板”的语音一栏,确实可以修改朗读声音。

  
 

在控制面板中找到“语音”,在“语音选择”中选择。

 

一般情况下,系统默认是“SAM”,所以大多数时候默认晚上陪你读书的是大叔。

 

如果选“LILI”,那么发音的就是娇滴滴的小萝莉……拿去不谢。

 

还有浓郁欧美腔的Anna、大妈Mary、正太Mike……

 

不过有的电脑系统里没得选,那么就不能选择想要的性别了……忘了小萝莉吧,或者重装操作系统… 

 

4. 没装Matlab怎么办?

其实,Matlab只是通过SpVoice对象调用TTS引擎而已,即使没安装matlab也可以让电脑读小说,按照下面的步骤:

 

(1) 新建一个记事本文件。

 

(2) 在这个新建的记事本文件里面输入
CreateObject("SAPI.SpVoice").Speak "XXXXX"

 

XXXXX就是你的小说内容。比如:

 
 

(3) 最后修改上面文件的扩展名为** .VBS文件。然后,点击这个文件,就能听到朗读了。


这位童鞋又问了:这样虽然不伤眼睛了,可是伤耳朵啊怎么办?好吧,下次我们找个时间专门做一期保护听力的…


(END)




科学计算编点程3M君,酷爱MatlabPython编程,擅长图像识别和多媒体处理。不定时po一些自己在科学、工程计算编程中总结的经验教训、小技巧、实用工具和好玩的东西,欢迎关注~


科学计算编点程 3M君,酷爱MatlabPython编程,擅长图像识别和多媒体处理。不定时po一些自己在科学、工程计算编程中总结的经验教训、小技巧、实用工具和好玩的东西,欢迎关注~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值