App Inventor學習記錄 21,做一個類似google翻譯功能的APP

app inventor學習記錄 6.1中,我們已經做了一個可以即時口頭翻譯的 app,但有時候因為口音的問題,直接翻出來的語意會怪怪的。

這次我們來記錄一下:
App Inventor學習記錄 21,做一個類似google翻譯功能的APP


首先來說明一下,這次的 app要達到的效果,就是類似像 google翻譯這樣,先輸入中文,然後按鈕後翻譯成英文。或是輸入英文,按鈕後翻譯成中文。


畫面編排的部份是這樣子。
2個標籤元件,用來顯示”請輸入要翻譯的內容”及”翻譯後的內容”
2個文字輸入盒,用來輸入文字
3個按鈕元件,拿來做”中翻英”、”英翻中”以及唸出翻譯後內容的”voice”按鈕使用。
Yandex Translate這個就是主要翻譯的元件。
TextToSpeech自然就是文字轉語音的元件了。


完成的 app長的像這樣,上面這個文字輸入盒輸入文字,再從下面的按鈕選擇是要中翻英還是英翻中。點唸出翻譯後的聲音按鈕的話,就會唸出翻譯後的內容。


全部的程式碼是這樣子的。


第 1部份的程式碼說明

當按下中翻英按鈕的時候
呼叫 yandex translate的 requestranslation翻譯功能,在 textToTranslate這個項次裡頭,我們放入文字輸入盒”原文輸入”的內容,language to translate to這裡就是放要翻譯成什麼語言。


第 2部份的程式碼說明:

這個部份,就只是把翻譯的語言從英文變成中文。其它的部份是相同的。


第 3部份的程式碼說明:

當 yandex translate. got translation當取得翻譯結果的時候:
如果,responsecode的值的 200的話,
就把文字輸入盒”翻譯後的內容”的值,設定成 get translation翻譯後的結果。

這裡要補充的是,
responsecode的值的 200的話,代表有翻譯成功,進一步的說明請參考
App Inventor 2 指令中文化 YandexTranslate 翻譯元件


第 4個部份的程式碼說明:

這部份最好寫,就是呼叫 text to speech.speak文字轉語音的這個功能,把文字輸入盒”翻譯後的內容”的文字,放進入 message裡頭就完成了。


我們在 6.1的記錄裡頭,我們做的是下面這樣子的。


這次的 aia檔的下載連結如下:
點我下載類似google翻譯功能APP,N0.21_Translate_2.aia

不管是直接口譯,還是翻譯之後在發聲,都是常用的功能,下次再來做一個整合版的。

之前介紹過的一些 appinventor的使用記錄,都整理在下面這個頁面上了。
APP INVENTOR學習記錄及資源整理頁面

發表迴響