Google関連

[Google Apps Script]選択文字列を翻訳する

  • Google Apps Scriptでドキュメント上で選択している文字列を翻訳します。
  • LanguageAppクラスのtranslateメソッドで文字列を翻訳します。
  • translateメソッドで指定できる言語は「Using REST – Google Translate API – Google Developers」に記載されています。
  • translateメソッドのsourceLanguageを空白にすることで、元の文字列の言語を自動判別します。
var ui = DocumentApp.getUi();

function onOpen(e){
    ui.createMenu('翻訳メニュー').addItem('選択文字列の翻訳', 'translateText').addToUi();
}

function translateText(){
    var text = getSelectedText();
    if(text.length == 0){
        ui.alert('文字列が選択されていません。');
    }else{
        ui.alert('元の文字列:' + text + '\n日本語訳:' + LanguageApp.translate(text, '', 'ja')); //元の文字列の言語:自動判別
    }
}

//選択文字列を取得
function getSelectedText(){
    var ret = "";
    var selection = DocumentApp.getActiveDocument().getSelection();
    if(selection){
        var text = [];
        var elements = selection.getRangeElements();
        for(var i = 0; i < elements.length; i++){
            if(elements[i].isPartial()){
                var element = elements[i].getElement().asText();
                var startIndex = elements[i].getStartOffset();
                var endIndex = elements[i].getEndOffsetInclusive();
                text.push(element.getText().substring(startIndex, endIndex + 1));
            }else{
                var element = elements[i].getElement();
                if(element.editAsText){
                    var elementText = element.asText().getText();
                    if (elementText != ''){
                        text.push(elementText);
                    }
                }
            }
        }
        if(text.length !== 0) ret = text;
    }
    return ret;
}

GoogleAppsScript_06_01

GoogleAppsScript_06_02

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP