介紹Google AJAX Language API 可以透過 Javascript 翻譯或是偵測語言. 但是必須在線執行, 無法在離線狀態下使用. Translation 是翻譯功能, Transliteration 則是字譯功能, 能在不同語言下的字母做轉換.Translation and DetectionIncluding the AJAX Language API<script type="text/javascript" src="http://www.google.com/jsapi"></script> <script type="text/javascript"> google.load("language", "1"); </script> Language Translation翻譯英文的 "Hello, World" 成西班牙語. (Demo@Google )google.language.translate("Hello world", "en", "es", function(result) { if (!result.error) { var container = document.getElementById("translation"); container.innerHTML = result.translation; } }); Language Translation偵測某段文字的語言. (Demo@Google )var text = "¿Dónde está el baño?"; google.language.detect(text, function(result) { if (!result.error) { var language = 'unknown'; for (l in google.language.Languages) { if (google.language.Languages[l] == result.language) { language = l; break; } } var container = document.getElementById("detection"); container.innerHTML = text + " is: " + language + ""; } }); Detection of Unicode font rendering support有些時候瀏覽器與作業系統會無法正確顯示一些特別 Unicode 字型. 你可以透過 google.language.isFontRenderingSupported() 來判斷使用者是否正常顯示文字. 另外要注意這個方法只在 Unicode 字型上有作用. 如果無法正常顯示有多個方式來解決這個問題 - 請詳細閱讀這篇文章 基本上是需要使用者端做調整. (Demo@Google )var result = google.language.isFontRenderingSupported("hi");
var resultStr = ""; if (result == google.language.FontRenderingStatus.SUPPORTED) { resultStr = "Rendering for " + lang + " is supported."; } else if (result == google.language.FontRenderingStatus.UNSUPPORTED) { resultStr = "Rendering for " + lang + " is not supported."; } else { resultStr = "Unsupported language " + lang + " for font detection API."; } var resultDiv = document.getElementById("displayResultsDiv"); resultDiv.innerHTML += resultStr; Source Detection during Translation自動偵測來源語言, 直接翻譯成指定的語言. (Demo@Google )google.language.translate("Hello world", "", "es", function(result) {
if (!result.error) { var container = document.getElementById("translation"); container.innerHTML = result.translation; } }); Branding and Google Attribution這部分跟翻譯沒直接關係, 只是一般而言必須告知使用者使用了哪個翻譯服務, 所以才有了 google.language.getBranding() 這個方法. (Demo@Google )// attach a "powered by Google" branding
<div id='branding'> </div> ... google.language.getBranding('branding'); Transliteration@TODO |
可以透過 Javascript 翻譯或是偵測語言. 但是必須在線執行, 無法在離線狀態下使用. Translation 是翻譯功能, Transliteration 則是字譯功能, 能在不同語言下的字母做轉換.