可以透過 Javascript 翻譯或是偵測語言. 但是必須在線執行, 無法在離線狀態下使用. Translation 是翻譯功能, Transliteration 則是字譯功能, 能在不同語言下的字母做轉換.
Including 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');
@TODO