2015-02-24 65 views
0

我正在开发应用程序以显示英语中的一些细节,并且当我单击该按钮时,它会以英语说出该消息,文本也包含数字。我想在泰卢固文语言中发言,有没有什么办法可以做到。默认的android tts不支持泰卢固语,如何在android应用中使用外部的tts引擎。请帮助我,谢谢。如何在Android应用程序中将文字与语言结合为泰卢固语语言

+0

检查这一项:HTTP://stackoverflow.com/questions/ 22495332/how-to-display-south-indian-languages-in-android/22497074#22497074 – Afsar 2015-02-24 11:52:31

回答

0
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    tts = new TextToSpeech(this, this); 
    btnSpeak = (Button) findViewById(R.id.btnSpeak); 
    txtText = (EditText) findViewById(R.id.txtText); 
    // button on click event 
    btnSpeak.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View arg0) { 
      speakOut(); 
     } 
    }); 
} 

// shutdown tts when activity destroy 
@Override 
public void onDestroy() { 
    // Don't forget to shutdown! 
    if (tts != null) { 
     tts.stop(); 
     tts.shutdown(); 
    } 
    super.onDestroy(); 
} 

// It will called before TTS started 
@Override 
public void onInit(int status) { 
    // TODO Auto-generated method stub 
    // check status for TTS is initialized or not 
    if (status == TextToSpeech.SUCCESS) { 
     // if TTS initialized than set language 
     result = tts.setLanguage(Locale.US); 

     // tts.setPitch(5); // you can set pitch level 
     // tts.setSpeechRate(); //you can set speech speed rate 

     // check language is supported or not 
     // check language data is available or not 
     if (result == TextToSpeech.LANG_MISSING_DATA 
       || result == TextToSpeech.LANG_NOT_SUPPORTED) { 
      Toast.makeText(this, "Missing data", Toast.LENGTH_LONG).show(); 
      // disable button 
      btnSpeak.setEnabled(false); 
     } else { 
      // if all is good than enable button convert text to speech 
      btnSpeak.setEnabled(true); 
     } 
    } else { 
     Log.e("TTS", "Initilization Failed"); 
    } 
} 

// call this method to speak text 
private void speakOut() { 
    String text = txtText.getText().toString(); 
    if (result != tts.setLanguage(Locale.US)) { 
     Toast.makeText(getApplicationContext(), "Enter right Words...... ", 
       Toast.LENGTH_LONG).show(); 
    } else { 
     // speak given text 
     tts.speak(text, TextToSpeech.QUEUE_FLUSH, null); 
    } 
} 

u必须设置语言环境,在法说出来

注意:手机和eclipse应该支持您的语言环境

+0

但是,谷歌默认tts不支持泰卢固语。它如何为泰卢固语语言工作。 – user2273358 2015-02-25 05:21:11

+0

我没有尝试它,但你可以检查http://www.findbestopensource.com/product/aa-tts – 2015-02-25 05:28:41

+0

我没有得到这个,我不明白如何使用这个在Android应用程序 – user2273358 2015-02-25 06:45:16

相关问题