delphi调用windows自带语音功能

windows自带语音接口 SAPI.SpVoice, 接口说明如下

https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ee125663(v%3dvs.85)

简单调用代码:

uses
System.Win.ComObj; {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject);
var
lO: OleVariant;
begin
lO := CreateOleObject('SAPI.SpVoice');
{设置语音库 男/女 中文/英文支持, 这句可以不要, 使用默认语音库}
lO.Voice := lO.GetVoices('name=Microsoft David Desktop', '').Item();
{语音播报}
lO.Speak(Memo1.Lines.Text);
end; procedure TForm1.Button2Click(Sender: TObject);
var
lO, lV, lX: OleVariant;
x: integer;
begin
{获取系统语音库}
lO := CreateOleObject('SAPI.SpVoice');
lV := lO.GetVoices;
for x := to lV.count - do
begin
lX := lV.item(x);
memo1.Lines.Add(lX.GetDescription);
end;
end;
上一篇:protobuf 系列 ---------下载、编译与使用


下一篇:工作总结:MFC使用Windows自带打开对话框