Chuyển đổi văn bản thành giọng nói trong Android
Trang 1 trong tổng số 1 trang • Share
Chuyển đổi văn bản thành giọng nói trong Android
Android cho phép bạn chuyển đổi văn bản thành giọng nói của bạn. Không chỉ bạn có thể chuyển đổi nó nhưng nó cũng cho phép bạn nói chuyện văn bản trong nhiều ngôn ngữ khác nhau. Android cung cấp lớp TextToSpeech cho mục đích này. Để sử dụng lớp này, bạn cần phải tạo một đối tượng của lớp này và chỉ định initListnere.
Cú pháp của nó được đưa ra dưới đây khi học lập trình android:
Trong bài listener này, bạn phải xác định rõ thuộc tính của đối tượng TextToSpeech chẳng hạn như ngôn ngữ của nó, pitch,... Ngôn ngữ có thể được thiết lập bằng cách gọi phương thức setLanguage(). Cú pháp của nó được đưa ra dưới đây:
STT Locale
1 US
2 CANADA_FRENCH
3 GERMANY
4 ITALY
5 JAPAN
6 CHINA
Khi bạn thiết lập ngôn ngữ, bạn nên gọi phương thức speak của lớp văn bản spkeak. Cú pháp:
STT Phương thức và mô tả
1 addSpeech(String text, String filename)
Phương thức này thêm 1 bản đồ giữa chuỗi văn bản và 1 file âm
2 getLanguage()
Trả về 1 Locale để mô tả ngôn ngữ
3 isSpeaking()
kiểm tra vùng ma TextToSpeech là đang bận rộn cho speak
4 setPitch(float pitch)
thiết lập độ cao của TextToSpeech
5 setSpeechRate(float speechRate)
Thiết lập chế độ của speak
6 shutdown()
Phương pháp này giải phóng các nguồn lực được sử dụng bởi các công cụ TextToSpeech.
7 stop()
>> Khóa học lập trình android co ban tai ha noi !
Phương thức ngừng speak
Ví dụ:
Ví dụ dưới đây chứng tỏ việc sử dụng lớp TextToSpeech. Là một ứng dụng cơ bản cho phép bạn thiết lập ghi văn bản và speak với nó.
Để thử nghiệm với ví dụ này, bạn cần chạy trên một thiết bị thực tế.
Các bước Mô tả
1 Bạn sẽ sử dụng Android studio để tạo ra một ứng dụng Android dưới một gói com.example.sairamkrishna.myapplication. Trong khi tạo dự án này, chắc chắn bạn Target SDK và biên dịch với các phiên bản mới nhất của Android SDK sử dụng các cấp cao hơn của API.
2 Sửa đổi file src/ MainActivity.java thêm mã TextToSpeech.
3 Sửa đổi bố trí tập tin XML res/layout/activity_main.xml thêm bất kỳ thành phần giao diện nếu cần thiết.
4 Chạy ứng dụng và chọn một thiết bị Android chạy và cài đặt các ứng dụng trên nó và kiểm tra kết quả.
Nội dung của src/MainActivity.java.
Nội dung của activity_main.xml
Nội dung của Strings.xml.
Nội dung của AndroidManifest.xml
Chọn thiết bị tùy chọn và sau đó kiểm tra thiết bị máy có hiển thị như hình dưới:
Bây giờ chỉ gõ một vài dòng văn bản vào trường và ấn nút. Một chú thích sẽ xuất hiện và văn bản sẽ được nói. Thể hiện dưới ảnh sau:
Bây giờ gõ một thứ gì đó và lặp lại bước vừa rồi với một locale khác. Bạn sẽ được nghe lại. Thể hiện dưới ảnh sau:
----------- || -----------
Trung tâm đào tạo Thiết kế đồ họa với các khóa học photoshop cơ bản tại hà nội !!
Cú pháp của nó được đưa ra dưới đây khi học lập trình android:
- Code:
[size=16]private EditText write;[/size]
[size=16]ttobj=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {[/size]
[size=16]@Override[/size]
[size=16]public void onInit(int status) {[/size]
[size=16]}[/size]
[size=16]}[/size]
[size=16]);[/size]
[size=16]
Trong bài listener này, bạn phải xác định rõ thuộc tính của đối tượng TextToSpeech chẳng hạn như ngôn ngữ của nó, pitch,... Ngôn ngữ có thể được thiết lập bằng cách gọi phương thức setLanguage(). Cú pháp của nó được đưa ra dưới đây:
- Code:
[size=16]ttobj.setLanguage(Locale.UK);
STT Locale
1 US
2 CANADA_FRENCH
3 GERMANY
4 ITALY
5 JAPAN
6 CHINA
Khi bạn thiết lập ngôn ngữ, bạn nên gọi phương thức speak của lớp văn bản spkeak. Cú pháp:
- Code:
[size=16]ttobj.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);
STT Phương thức và mô tả
1 addSpeech(String text, String filename)
Phương thức này thêm 1 bản đồ giữa chuỗi văn bản và 1 file âm
2 getLanguage()
Trả về 1 Locale để mô tả ngôn ngữ
3 isSpeaking()
kiểm tra vùng ma TextToSpeech là đang bận rộn cho speak
4 setPitch(float pitch)
thiết lập độ cao của TextToSpeech
5 setSpeechRate(float speechRate)
Thiết lập chế độ của speak
6 shutdown()
Phương pháp này giải phóng các nguồn lực được sử dụng bởi các công cụ TextToSpeech.
7 stop()
>> Khóa học lập trình android co ban tai ha noi !
Phương thức ngừng speak
Ví dụ:
Ví dụ dưới đây chứng tỏ việc sử dụng lớp TextToSpeech. Là một ứng dụng cơ bản cho phép bạn thiết lập ghi văn bản và speak với nó.
Để thử nghiệm với ví dụ này, bạn cần chạy trên một thiết bị thực tế.
Các bước Mô tả
1 Bạn sẽ sử dụng Android studio để tạo ra một ứng dụng Android dưới một gói com.example.sairamkrishna.myapplication. Trong khi tạo dự án này, chắc chắn bạn Target SDK và biên dịch với các phiên bản mới nhất của Android SDK sử dụng các cấp cao hơn của API.
2 Sửa đổi file src/ MainActivity.java thêm mã TextToSpeech.
3 Sửa đổi bố trí tập tin XML res/layout/activity_main.xml thêm bất kỳ thành phần giao diện nếu cần thiết.
4 Chạy ứng dụng và chọn một thiết bị Android chạy và cài đặt các ứng dụng trên nó và kiểm tra kết quả.
Nội dung của src/MainActivity.java.
- Code:
[size=16]package com.example.sairamkrishna.myapplication;[/size]
[size=16]
[/size]
[size=16]import android.app.Activity;[/size]
[size=16]import android.hardware.SensorManager;[/size]
[size=16]import android.os.Bundle;[/size]
[size=16]
[/size]
[size=16]import android.speech.tts.TextToSpeech;[/size]
[size=16]import android.util.Log;[/size]
[size=16]
[/size]
[size=16]import android.view.Menu;[/size]
[size=16]import android.view.MenuItem;[/size]
[size=16]import android.view.View;[/size]
[size=16]
[/size]
[size=16]import android.widget.Button;[/size]
[size=16]import android.widget.EditText;[/size]
[size=16]import android.widget.TextView;[/size]
[size=16]
[/size]
[size=16]import java.util.List;[/size]
[size=16]import java.util.Locale;[/size]
[size=16]
[/size]
[size=16]import android.hardware.Sensor;[/size]
[size=16]import android.hardware.SensorManager;[/size]
[size=16]import android.widget.Toast;[/size]
[size=16]
[/size]
[size=16]public class MainActivity extends Activity {[/size]
[size=16]TextToSpeech t1;[/size]
[size=16]EditText ed1;[/size]
[size=16]Button b1;[/size]
[size=16]
[/size]
[size=16]@Override[/size]
[size=16]protected void onCreate(Bundle savedInstanceState) {[/size]
[size=16]super.onCreate(savedInstanceState);[/size]
[size=16]setContentView(R.layout.activity_main);[/size]
[size=16]ed1=(EditText)findViewById(R.id.editText);[/size]
[size=16]b1=(Button)findViewById(R.id.button);[/size]
[size=16]
[/size]
[size=16]t1=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {[/size]
[size=16]@Override[/size]
[size=16]public void onInit(int status) {[/size]
[size=16]if(status != TextToSpeech.ERROR) {[/size]
[size=16]t1.setLanguage(Locale.UK);[/size]
[size=16]}[/size]
[size=16]}[/size]
[size=16]});[/size]
[size=16]
[/size]
[size=16]b1.setOnClickListener(new View.OnClickListener() {[/size]
[size=16]@Override[/size]
[size=16]public void onClick(View v) {[/size]
[size=16]String toSpeak = ed1.getText().toString();[/size]
[size=16]Toast.makeText(getApplicationContext(), toSpeak,Toast.LENGTH_SHORT).show();[/size]
[size=16]t1.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);[/size]
[size=16]}[/size]
[size=16]});[/size]
[size=16]}[/size]
[size=16]
[/size]
[size=16]public void onPause(){[/size]
[size=16]if(t1 !=null){[/size]
[size=16]t1.stop();[/size]
[size=16]t1.shutdown();[/size]
[size=16]}[/size]
[size=16]super.onPause();[/size]
[size=16]}[/size]
[size=16]
[/size]
[size=16]@Override[/size]
[size=16]public boolean onCreateOptionsMenu(Menu menu) {[/size]
[size=16]// Inflate the menu; this adds items to the action bar if it is present.[/size]
[size=16]getMenuInflater().inflate(R.menu.menu_main, menu);[/size]
[size=16]return true;[/size]
[size=16]}[/size]
[size=16]
[/size]
[size=16]@Override[/size]
[size=16]public boolean onOptionsItemSelected(MenuItem item) {[/size]
[size=16]// Handle action bar item clicks here. The action bar will[/size]
[size=16]// automatically handle clicks on the Home/Up button, so long[/size]
[size=16]// as you specify a parent activity in AndroidManifest.xml.[/size]
[size=16]
[/size]
[size=16]int id = item.getItemId();[/size]
[size=16]
[/size]
[size=16]//noinspection SimplifiableIfStatement[/size]
[size=16]if (id == R.id.action_settings) {[/size]
[size=16]return true;[/size]
[size=16]}[/size]
[size=16]return super.onOptionsItemSelected(item);[/size]
[size=16]}[/size]
[size=16]}[/size]
[size=16]
Nội dung của activity_main.xml
- Code:
[size=16][/size]
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
[size=16][/size]
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
[size=16][/size]
android:paddingRight="@dimen/activity_horizontal_margin"
[size=16][/size]
android:paddingTop="@dimen/activity_vertical_margin"
[size=16][/size]
android:paddingBottom="@dimen/activity_vertical_margin"
[size=16][/size]
tools:context=".MainActivity"
[size=16][/size]
android:transitionGroup="true">
[size=16][/size]
[size=16][/size]
android:layout_height="wrap_content"
android:id="@+id/textview"
android:textSize="35dp"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tutorials point"
android:id="@+id/textView"
android:layout_below="@+id/textview"
android:layout_centerHorizontal="true"
android:textColor="#ff7aff24"
android:textSize="35dp" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView"
android:src="@drawable/abc"
android:layout_below="@+id/textView"
android:layout_centerHorizontal="true"
android:theme="@style/Base.TextAppearance.AppCompat" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/editText"
android:layout_below="@+id/imageView"
android:layout_marginTop="46dp"
android:hint="Enter Text"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:textColor="#ff7aff10"
android:textColorHint="#ffff23d1" />
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Text to Speech"
android:id="@+id/button"
android:layout_below="@+id/editText"
android:layout_centerHorizontal="true"
android:layout_marginTop="46dp" />
Nội dung của Strings.xml.
- Code:
My Application
Hello world!
Settings
Nội dung của AndroidManifest.xml
- Code:
package="com.example.sairamkrishna.myapplication" >
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:name=".MainActivity"
android:label="@string/app_name" >
Chọn thiết bị tùy chọn và sau đó kiểm tra thiết bị máy có hiển thị như hình dưới:
Bây giờ chỉ gõ một vài dòng văn bản vào trường và ấn nút. Một chú thích sẽ xuất hiện và văn bản sẽ được nói. Thể hiện dưới ảnh sau:
Bây giờ gõ một thứ gì đó và lặp lại bước vừa rồi với một locale khác. Bạn sẽ được nghe lại. Thể hiện dưới ảnh sau:
----------- || -----------
Trung tâm đào tạo Thiết kế đồ họa với các khóa học photoshop cơ bản tại hà nội !!
nuong- Cấp 1
- Bài gửi : 23
Điểm : 3334
Like : 0
Tham gia : 02/12/2015
Similar topics
» Đào tạo thanh nhạc, giọng hát
» Windows Phone sẽ miễn phí giống Android?
» Hướng dẫn cách xử lí và trồng hạt giống chùm ngây
» Công ty chuyên bán xe tải trọng tải nhỏ chạy trong thành phố
» Cung cấp giống cây trồng, hoa Lan Tết, hoa Ly Tết
» Windows Phone sẽ miễn phí giống Android?
» Hướng dẫn cách xử lí và trồng hạt giống chùm ngây
» Công ty chuyên bán xe tải trọng tải nhỏ chạy trong thành phố
» Cung cấp giống cây trồng, hoa Lan Tết, hoa Ly Tết
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết