Số 43
HỒ LÔ BIẾN

Dùng Windows viết chương trình đọc tiếng Anh trong Windows

Nguyễn Công Thành (Q6)

Bằng cách dùng thành phần Microsoft Direct Text to Speech, bạn có thể viết chương trình đọc văn bản Anh Ngữ thành tiếng khá dễ dàng. Tôi đã thử “bào chế” một chương trình như vậy bằng Visual Basic 6.0, xin trình bày ở đây để bạn cùng "nếm" cho vui.

Trước tiên, bạn cần có các nguyên liệu "ngoại nhập":

- SAPI 4.0 runtime support
- Text to speech Engines
- Language components

Bạn có thể lấy đủ các thứ kể trên tại địa chỉ: http://www.microsoft.com/msagent/downloads/user.asp

"Đi chợ" xong, bạn tiến hành các bước như sau:

1. Khởi động VB, chọn File/New Project/Standard EXE/OK.

2. Thay đổi thuộc tính (properties) của biểu mẫu form1 như sau:
Name : fromDocVB
Caption : Doc Tieng Anh

3. Vẽ vào biểu mẫu 2 khung soạn thảo (textbox): Text1Text2. Text1 có chiều rộng gần bằng chiều rộng biểu mẫu và chiều dài khoảng ¾ chiều dài của biểu mẫu.

4. Thay đổi thuộc tính của Text1 như sau:

Name : txtvanban
Text : (để trống)
Multiline : True

5. Thay đổi thuộc tính của Text2 như sau:

Name : txtTocdo
Text : 150

6. Vẽ vào biểu mẫu 3 nút lệnh (command button).

7. Đổi thuộc tính của Command1 như sau:

Name : cmdDoc
Caption : &Doc

8. Đổi thuộc tính của Command2 như sau:

Name : cmdDung
Caption : D&ung

9. Đổi thuộc tính của Command3 như sau:
Name : cmdDoctiep
Caption : Doc &Tiep

10. Vẽ một nhãn (label) kế bên txtTocdo nhằm hướng dẫn người dùng nhập tốc độ đọc vào. Bạn cho thuộc tính Caption của nhãn là: "Nhập tốc độ đọc từ 120 -> 250

11. Tiếp theo, bạn vào trình đơn Project/Components, chọn Microsoft Direct Text to Speech trong danh sách các thành phần (hình 1) rồi bấm OK. Khi thoát ra, bạn sẽ thấy trong khung bên phải xuất hiện một biểu tượng mới (hình như là cái miệng thì phải). Bạn vẽ “cái miệng” đó vào biểu mẫu, đặt các thuộc tính như sau:
Name : ssDoc
Visible : False

Biểu mẫu của bạn lúc này có dạng như hình 2.

12. Trong cửa sổ mã, bạn nhập vào đoạn mã 1.

Đoạn mã 1

Private Sub txtTocdo_LostFocus()
If (Val(txtTocdo.Text) < 120) Or
(Val(txtTocdo.Text) > 250) Then
MsgBox ("Toc do phai tu 120 -> 250")
End If
End Sub
Private Sub cmdDung_Click()
ssDoc.AudioPause
End Sub
Private Sub cmdDocTiep_Click()
ssDoc.AudioResume
End Sub
Private Sub cmdDoc_Click()
ssDoc.AudioReset
ssDoc.Speed = txtTocdo.Text
ssDoc.Speak txtVanban.Text
End Sub

Thế là xong. Bạn hãy nhấn F5 để xem thành quả của mình. Bạn thử cho "nó" đọc tiếng Anh xem thế nào. Không đến nỗi tệ, phải không?

Với cách thức tương tự, ta còn có thể tạo ra chương trình có khả năng đọc các thứ tiếng khác như tiếng Pháp, tiếng Hàn Quốc,…

Bạn có thể tải về các thành phần dùng cho các ngôn ngữ khác nhau tại địa chỉ nêu trên.

[Đầu trang]
Trang chủ
Thư ngỏ
Nội lực "Peter Pan"
Cầu nối Intel Việt Nam
Chuyện trong tuần
Nhóm Frontpage
Cõi người ta
Kim cương doanh nghiệp
Bình luận thị trường
Cõi Mô-bai
Chuyên đề
Bổ ngửa
Nuôi hồn Robot
Túi càn khôn IT
Hồ lô biến
Cảm về Game
Nhật ký e-CHÍP
Bản quyền VASC Orient, Công ty phát triển phần mềm VASC
99 Triệu Việt Vương HN; Tel: (04) 9782235 • email: echip@vasc.com.vn