Урок 22 Преобразование текста в речь. Говорилка
Пример 1 Приложение читает любой текст на английском или русском языках. Здесь понадобится библиотека SpeechLib_TLB. Эту библиотеку вначале надо будет импортировать, а затем включить в наш проект. Для импорта библиотеки нужно в главном меню выбрать Component — Import Component — Import Type Library — Microsoft Speech Object Library. После этого урока вы сможете озвучивать каким либо голосом ваши приложения.
unit Unit13;
interface
uses // добавить библиотеку SpeechLib_TLB
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, SpeechLib_TLB;
type
TForm13 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form13: TForm13;
gpIVTxt: ISpVoice; // интерфейс для работы с речью
Pool: LongWord;
implementation
{$R *.dfm}
procedure TForm13.FormCreate(Sender: TObject);
begin
gpIVTxt := CoSpVoice.Create as ISpVoice;
// проговаривание – метод Speak объекта SPVoice имеет три параметра
gpIVTxt.Speak (PChar ('Могу прочитать текст'), 1, Pool);
gpIVTxt.Speak (PChar ('Корпорация Большой Камаган'), 1, Pool);
end;
end.
Пример 2 Приложение читает текст введенный пользователем. Имеется возможность вставить любой сторонний текст для последующего прочтения. В проекте понадобится компонент TMemo – Многострочный редактор текста находящийся во вкладке Standard.
unit Unit13;
interface
uses // добавить библеотеку SpeechLib_TLB
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, SpeechLib_TLB, Vcl.StdCtrls,
Vcl.ExtCtrls;
type
TForm13 = class(TForm)
Button1: TButton;
Button2: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form13: TForm13;
gpIVTxt: ISpVoice;
Pool: LongWord;
implementation
{$R *.dfm}
procedure TForm13.Button1Click(Sender: TObject);
begin
gpIVTxt := CoSpVoice.Create as ISpVoice;
// метод Speak
gpIVTxt.Speak(PChar(Memo1.Text), 1, Pool);
end;
procedure TForm13.Button2Click(Sender: TObject);
begin
Memo1.Text := '';
end;
end.
Пример 3 Приложение позволит выбрать голос, регулировать громкость и скорость речи.
Выбери лучшее! allbest |