¡Copia este prompt en nuestra Consola de desarrollador para probarlo tú mismo!

Content
UserEscríbeme un script de Google Apps que traduzca todo el texto en una presentación de Google Slides al coreano.

Ejemplo de Salida

Aquí hay un script de Google Apps que traduce todo el texto en una presentación de Google Slides al coreano:

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);
          }
        }
      }
    }
  }
}

Así es como funciona el script:

  1. La función translateSlidesToKorean() obtiene la presentación activa de Google Slides usando SlidesApp.getActivePresentation().

  2. Obtiene todas las diapositivas en la presentación usando el método getSlides().

  3. Iteramos sobre cada diapositiva en la presentación.

  4. Para cada diapositiva, recuperamos todos los elementos de página (formas, cuadros de texto, tablas, etc.) usando el método getPageElements().

  5. Iteramos sobre cada elemento de página en la diapositiva.

  6. Verificamos el tipo de elemento de página usando getPageElementType():

    • Si el elemento de página es una forma (SlidesApp.PageElementType.SHAPE), obtenemos el contenido de texto de la forma usando getText().asString(). Luego traducimos el texto al coreano usando LanguageApp.translate(text, '', 'ko'), donde '' representa el idioma de origen (detección automática) y 'ko' representa el idioma de destino (coreano). Finalmente, establecemos el texto traducido de vuelta en la forma usando setText().
    • Si el elemento de página es una tabla (SlidesApp.PageElementType.TABLE), iteramos sobre cada celda en la tabla y traducimos el texto dentro de cada celda de manera similar a como manejamos las formas.
  7. El script continúa procesando todos los elementos de página en cada diapositiva hasta que todo el texto en la presentación haya sido traducido al coreano.

Nota: Este script asume que tienes los permisos necesarios para acceder y modificar la presentación de Google Slides. Asegúrate de tener los derechos de acceso requeridos antes de ejecutar el script.

Además, ten en cuenta que la traducción se realiza utilizando la API de Google Translate, por lo que la calidad de la traducción puede variar dependiendo de la complejidad del texto y las capacidades del servicio de traducción.


Solicitud de 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)