このプロンプトを開発者コンソールにコピーして試してみてください!

Content
UserGoogle Slides プレゼンテーションのすべてのテキストを韓国語に翻訳する Google Apps スクリプトを書いてください。

出力例

以下は Google Slides プレゼンテーションのすべてのテキストを韓国語に翻訳する Google Apps スクリプトです:

function translateSlidesToKorean() {
  var presentation = SlidesApp.getActivePresentation();
  var slides = presentation.getSlides();

  for (var i = 0; i < slides.length; i++) {
    var slide = slides[i];
    var pageElements = slide.getPageElements();

    for (var j = 0; j < pageElements.length; j++) {
      var pageElement = pageElements[j];

      if (pageElement.getPageElementType() === SlidesApp.PageElementType.SHAPE) {
        var shape = pageElement.asShape();
        if (shape.getText() !== null) {
          var text = shape.getText().asString();
          var translatedText = LanguageApp.translate(text, '', 'ko');
          shape.getText().setText(translatedText);
        }
      } else if (pageElement.getPageElementType() === SlidesApp.PageElementType.TABLE) {
        var table = pageElement.asTable();
        var numRows = table.getNumRows();
        var numColumns = table.getNumColumns();

        for (var row = 0; row < numRows; row++) {
          for (var col = 0; col < numColumns; col++) {
            var tableCell = table.getCell(row, col);
            var text = tableCell.getText().asString();
            var translatedText = LanguageApp.translate(text, '', 'ko');
            tableCell.getText().setText(translatedText);
          }
        }
      }
    }
  }
}

このスクリプトの動作方法:

  1. translateSlidesToKorean() 関数は SlidesApp.getActivePresentation() を使用してアクティブな Google Slides プレゼンテーションを取得します。

  2. getSlides() メソッドを使用してプレゼンテーション内のすべてのスライドを取得します。

  3. プレゼンテーション内の各スライドを反復処理します。

  4. 各スライドについて、getPageElements() メソッドを使用してすべてのページ要素(図形、テキストボックス、テーブルなど)を取得します。

  5. スライド上の各ページ要素を反復処理します。

  6. getPageElementType() を使用してページ要素のタイプを確認します:

    • ページ要素が図形(SlidesApp.PageElementType.SHAPE)の場合、getText().asString() を使用して図形のテキスト内容を取得します。次に、LanguageApp.translate(text, '', 'ko') を使用してテキストを韓国語に翻訳します。ここで、'' はソース言語(自動検出)を、'ko' はターゲット言語(韓国語)を表します。最後に、setText() を使用して翻訳されたテキストを図形に設定し直します。
    • ページ要素がテーブル(SlidesApp.PageElementType.TABLE)の場合、テーブル内の各セルを反復処理し、図形の場合と同様にセル内のテキストを翻訳します。
  7. スクリプトは、プレゼンテーション内のすべてのテキストが韓国語に翻訳されるまで、各スライド上のすべてのページ要素の処理を続けます。

注意: このスクリプトは、Google Slides プレゼンテーションにアクセスして 修正するための必要な権限があることを前提としています。スクリプトを実行する前に、 必要なアクセス権限があることを確認してください。

また、翻訳は Google Translate API を使用して実行されるため、翻訳の品質は テキストの複雑さと翻訳サービスの機能によって異なる場合があることに 注意してください。


API リクエスト

import anthropic

client = anthropic.Anthropic(
  # defaults to os.environ.get("ANTHROPIC_API_KEY")
  api_key="my_api_key",
)
message = client.messages.create(
  model="claude-3-5-sonnet-20241022",
  max_tokens=2000,
  temperature=0,
  messages=[
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Write me a Google apps script that will translate all text in a Google Slides presentation to Korean."
        }
      ]
    }
  ]
)
print(message.content)