Android - Text in Sprache Tutorial

Android können Sie Ihren Text in Sprache umzuwandeln. Nicht nur können Sie es konvertieren, aber es erlaubt Ihnen auch, Text in verschiedene Sprachen zu sprechen.
Android bietet TextToSpeech Klasse für diesen Zweck. Um diese Klasse zu verwenden, müssen Sie ein Objekt dieser Klasse instanziiert und geben Sie deninitListnere. Die Syntax ist wie folgt:
private EditText write;
ttobj=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
   @Override
   public void onInit(int status) {
   }
}
);
In diesem Zuhörer, müssen Sie die Eigenschaften für TextToSpeech Objekt, wie ihre Sprache, Pech etc. Sprache kann durch den Aufruf gesetzt werden sollsetLanguage () Methode. Die Syntax ist unten angegeben -
ttobj.setLanguage(Locale.UK);
Das Verfahren setLanguage nimmt eine Gebietsschema-Objekt als Parameter.Die Liste der einige der verfügbaren sind unten angegeben Schauplätze -
Sr.NoSchauplatz
1US
2CANADA_FRENCH
3DEUTSCHLAND
4ITALIEN
5JAPAN
6CHINA
Nachdem Sie die Sprache eingestellt haben, können Sie rufen Sie sprechenMethode der Klasse, um den Text zu sprechen. Die Syntax ist unten angegeben -
ttobj.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);
Abgesehen von der Methode sprechen, gibt es einige andere Methode, in der TextToSpeech Klasse. Sie sind nachfolgend aufgeführt:
Sr.NoVerfahren & Beschreibung
1addSpeech (String text, String filename)
Diese Methode fügt eine Zuordnung zwischen einer Textzeichenfolge und einer Sounddatei.
2getLanguage ()
Diese Methode gibt ein Gebietsschemainstanz die Sprache beschreibt.
3isSpeaking ()
Diese Methode überprüft, ob das Motor TextToSpeech besetzt Sprechen.
4setpitch (float Abstand)
Diese Methode legt die Sprachtonhöhe für die TextToSpeech Motor.
5setSpeechRate (float speechRate)
Diese Methode legt die Sprechgeschwindigkeit.
6herunterfahren()
Diese Methode Gibt die vom TextToSpeech Motors verwendeten Ressourcen frei.
7Stopp()
Diese Methode stoppen zu sprechen.

Beispiel

Das folgende Beispiel demonstriert die Verwendung von TextToSpeech Klasse.Es Kästen einer einfachen Anwendung, die Sie schreiben Text setzen und sprechen sie erlaubt.
Um bei diesem Beispiel zu experimentieren, müssen Sie diese auf einem Gerät laufen.
SchritteBezeichnung
1Sie werden Android-Studio verwenden, um ein Android-Anwendung unter einem Paket com.example.sairamkrishna.myapplication erstellen.Bei der Erstellung dieses Projekt, stellen Sie sicher SDK Ziel und Kompilieren Sie mit der neuesten Version des Android SDK zu höheren Ebenen der APIs verwenden.
2Ändern src / MainActivity.java Datei an TextToSpeech Code hinzufügen.
3Ändern Sie das Layout XML-Datei res / layout / activity_main.xml jede GUI-Komponente hinzufügen, wenn erforderlich.
4Führen Sie die Anwendung, und wählen Sie einen laufenden Android-Gerät und installieren Sie die Anwendung und überprüfen Sie die Ergebnisse.
Hier ist der Inhalt des src / MainActivity.java.
package com.example.sairamkrishna.myapplication;

import android.app.Activity;
import android.hardware.SensorManager;
import android.os.Bundle;

import android.speech.tts.TextToSpeech;
import android.util.Log;

import android.view.Menu;
import android.view.MenuItem;
import android.view.View;

import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

import java.util.List;
import java.util.Locale;

import android.hardware.Sensor;
import android.hardware.SensorManager;
import android.widget.Toast;

public class MainActivity extends Activity {
   TextToSpeech t1;
   EditText ed1;
   Button b1;
   
   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      ed1=(EditText)findViewById(R.id.editText);
      b1=(Button)findViewById(R.id.button);
      
      t1=new TextToSpeech(getApplicationContext(), new TextToSpeech.OnInitListener() {
         @Override
         public void onInit(int status) {
            if(status != TextToSpeech.ERROR) {
               t1.setLanguage(Locale.UK);
            }
         }
      });
      
      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            String toSpeak = ed1.getText().toString();
            Toast.makeText(getApplicationContext(), toSpeak,Toast.LENGTH_SHORT).show();
            t1.speak(toSpeak, TextToSpeech.QUEUE_FLUSH, null);
         }
      });
   }
   
   public void onPause(){
      if(t1 !=null){
         t1.stop();
         t1.shutdown();
      }
      super.onPause();
   }
   
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.menu_main, menu);
      return true;
   }
   
   @Override
   public boolean onOptionsItemSelected(MenuItem item) {
      // Handle action bar item clicks here. The action bar will
      // automatically handle clicks on the Home/Up button, so long
      // as you specify a parent activity in AndroidManifest.xml.
      
      int id = item.getItemId();
      
      //noinspection SimplifiableIfStatement
      if (id == R.id.action_settings) {
         return true;
      }
      return super.onOptionsItemSelected(item);
   }
}
Hier beträgt der Gehalt an activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
   android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin"
   tools:context=".MainActivity"
   android:transitionGroup="true">
   
   <TextView android:text="Text to Speech" android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textview"
      android:textSize="35dp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true" />
      
   <TextView
      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" />
      
   <ImageView
      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" />
      
   <EditText
      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" />
      
   <Button
      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" />

</RelativeLayout>
Hier beträgt der Gehalt an strings.xml.
<resources>
   <string name="app_name">My Application</string>
   <string name="hello_world">Hello world!</string>
   <string name="action_settings">Settings</string>
</resources>
Hier beträgt der Gehalt an AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
   
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
      
         <intent-filter>
            <action android:name="android.intent.action.MAIN" >
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
   </application>
</manifest>
Lassen Sie uns versuchen, um Ihre Anwendung auszuführen. Ich nehme an, Sie Ihre aktuelle Android-Gerät mit dem Computer verbunden haben. Um die App vom Android-Studio, öffnen Sie eine der Aktivität Dateien Ihres Projekt auszuführen, und klicken Sie auf Eclipse-Run IconAusführen-Symbol in der Symbolleiste. Vor dem Starten Ihrer Anwendung werden android Studio Display folgende Fenster, um eine Option, wo Sie Ihre Android-Anwendung ausgeführt werden soll.
Wählen Sie Ihr Mobilgerät als Option und prüfen Sie dann Ihr mobiles Gerät, das folgende Bildschirm anzeigt.
Android Text-to Speech Tutorial
Jetzt brauchen Sie nur geben Sie Text in das Feld ein und klicken Sie auf den Text in Sprache Button. Eine Benachrichtigung scheint und Text wird gesprochen werden. Es ist in der Abbildung unten dargestellt -
Android Text-to Speech Tutorial
Geben Sie nun etwas anderes, und wiederholen Sie den Schritt es mit einem anderen Gebietsschema. Sie werden wieder zu hören Sound. Dies ist unten dargestellt -
Android Text-to Speech Tutorial

Share on Google Plus

About ptjqatar

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 التعليقات:

Kommentar veröffentlichen