Java 文本转语音播报
1:pom.xml依赖
<dependency>
<groupId>net.sf.jacob-project</groupId>
<artifactId>jacob</artifactId>
<version>1.14.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/net.java.dev.jna/jna -->
<dependency>
<groupId>net.java.dev.jna</groupId>
<artifactId>jna</artifactId>
<version>5.4.0</version>
</dependency>
或者下载jacob.jar包
2:把jacob-1.18-x64.dll 或者 jacob-1.18-x86.dll 文件复制到jdk安装位置的bin目录下(注意版本)
3:案例代码
public class SpeechUtil {
public static void main(String[] args) {
speakMessage("收款12.5元", 100, 1);
}
/**
*
* @param message 读取文字
* @param volume 音量
* @param rate 朗读速度
*/
public static void speakMessage(String message, int volume, int rate) {
ActiveXComponent sap = new ActiveXComponent("Sapi.SpVoice");
Dispatch sapo = sap.getObject();
try {
// 音量 0-100
sap.setProperty("Volume", new Variant(volume));
// 语音朗读速度 -10 到 +10
sap.setProperty("Rate", new Variant(rate));
Dispatch.call(sapo, "Speak", new Variant(message));
} catch (Exception e) {
e.printStackTrace();
} finally {
sapo.safeRelease();
sap.safeRelease();
}
}
}
4:jacob-1.14.3下载链接