没有浏览器 GUI 的文本转语音
Text-To-Speech without browser GUI
我一直在 HTML 设计以创建具有 GUI 的应用程序。我为此创建了一些脚本 - 特别是使用浏览器的脚本 window Speech Synthesis Utterance.
然而,突然之间,项目的范围发生了变化,我需要取消 GUI,但将 TTS 脚本 运行 保留为后台进程。我对编程还是很陌生,所以我尝试用 node.js 打开脚本,但它并没有那样工作。该话语被编程为读取某个 xml 文件。所以基本上,我想做的就是取消 HTML 浏览器方面,并保留 javascript。这可能吗?有没有人对我如何处理这个问题有任何建议?
我试过只在 node.js 中打开脚本
我调查了 element.js,但 "seem" 并不是我想要的。
var msg = new SpeechSynthesisUtterance("Testing");
var voices = window.speechSynthesis.getVoices();
var voice = speechSynthesis.getVoices();
speechSynthesis.getVoices().forEach(function(voice) {
console.log(voice.name, voice.default ? voice.default : '');
});
msg.pitch = 1.1;
msg.volume = 1;
msg.rate = 0.85;
msg.lang = 'en-US';
msg.voice = voices[1];
window.speechSynthesis.speak(msg);
实际结果 - 打开网络浏览器并开始对话(有一个 html 文件)
我想要的预期结果 - 没有网络浏览器,打开文件时就说话(也许?)
Try Electron with a frameless transparent window.
Electron 为桌面应用程序打包了 Node 和 Chromium。
我刚刚试了一下,它对我有用:
git clone https://github.com/electron/electron-quick-start
# Go into the repository
cd electron-quick-start
# Install dependencies
npm install
编辑 renderer.js 并在上方插入您的代码。
编辑 main.js
中的 window
mainWindow = new BrowserWindow({
width: 800,
height: 600,
frame: false,
transparent: true,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
}
})
然后index.html
中的所有内容都留空
我一直在 HTML 设计以创建具有 GUI 的应用程序。我为此创建了一些脚本 - 特别是使用浏览器的脚本 window Speech Synthesis Utterance.
然而,突然之间,项目的范围发生了变化,我需要取消 GUI,但将 TTS 脚本 运行 保留为后台进程。我对编程还是很陌生,所以我尝试用 node.js 打开脚本,但它并没有那样工作。该话语被编程为读取某个 xml 文件。所以基本上,我想做的就是取消 HTML 浏览器方面,并保留 javascript。这可能吗?有没有人对我如何处理这个问题有任何建议?
我试过只在 node.js 中打开脚本 我调查了 element.js,但 "seem" 并不是我想要的。
var msg = new SpeechSynthesisUtterance("Testing");
var voices = window.speechSynthesis.getVoices();
var voice = speechSynthesis.getVoices();
speechSynthesis.getVoices().forEach(function(voice) {
console.log(voice.name, voice.default ? voice.default : '');
});
msg.pitch = 1.1;
msg.volume = 1;
msg.rate = 0.85;
msg.lang = 'en-US';
msg.voice = voices[1];
window.speechSynthesis.speak(msg);
实际结果 - 打开网络浏览器并开始对话(有一个 html 文件) 我想要的预期结果 - 没有网络浏览器,打开文件时就说话(也许?)
Try Electron with a frameless transparent window.
Electron 为桌面应用程序打包了 Node 和 Chromium。
我刚刚试了一下,它对我有用:
git clone https://github.com/electron/electron-quick-start
# Go into the repository
cd electron-quick-start
# Install dependencies
npm install
编辑 renderer.js 并在上方插入您的代码。
编辑 main.js
中的 window mainWindow = new BrowserWindow({
width: 800,
height: 600,
frame: false,
transparent: true,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
}
})
然后index.html
中的所有内容都留空