Google Apps Scripter
Generieren Sie Google Apps-Skripte, um Aufgaben basierend auf den Anforderungen des Benutzers auszuführen.
Kopieren Sie diese Aufforderung in unsere Entwickler-Konsole, um es selbst auszuprobieren!
Inhalt | |
---|---|
Benutzer | Schreiben Sie mir ein Google Apps-Skript, das den gesamten Text in einer Google Slides-Präsentation ins Koreanische übersetzt. |
Beispielausgabe
Hier ist ein Google Apps-Skript, das den gesamten Text in einer Google Slides-Präsentation ins Koreanische übersetzt:
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);
}
}
}
}
}
}
So funktioniert das Skript:
-
Die Funktion
translateSlidesToKorean()
ruft die aktive Google Slides-Präsentation mitSlidesApp.getActivePresentation()
ab. -
Es ruft alle Folien in der Präsentation mit der Methode
getSlides()
ab. -
Wir iterieren über jede Folie in der Präsentation.
-
Für jede Folie rufen wir alle Seitenelemente (Formen, Textfelder, Tabellen usw.) mit der Methode
getPageElements()
ab. -
Wir iterieren über jedes Seitenelement auf der Folie.
-
Wir überprüfen den Typ des Seitenelements mit
getPageElementType()
:- Wenn das Seitenelement eine Form ist (
SlidesApp.PageElementType.SHAPE
), erhalten wir den Textinhalt der Form mitgetText().asString()
. Wir übersetzen dann den Text ins Koreanische mitLanguageApp.translate(text, '', 'ko')
, wobei''
die Ausgangssprache (automatische Erkennung) und'ko'
die Zielsprache (Koreanisch) darstellt. Schließlich setzen wir den übersetzten Text mitsetText()
wieder in die Form ein. - Wenn das Seitenelement eine Tabelle ist (
SlidesApp.PageElementType.TABLE
), iterieren wir über jede Zelle in der Tabelle und übersetzen den Text in jeder Zelle ähnlich wie bei Formen.
- Wenn das Seitenelement eine Form ist (
-
Das Skript verarbeitet weiterhin alle Seitenelemente auf jeder Folie, bis der gesamte Text in der Präsentation ins Koreanische übersetzt wurde.
Hinweis: Dieses Skript setzt voraus, dass Sie über die erforderlichen Berechtigungen zum Zugriff auf und zur Änderung der Google Slides-Präsentation verfügen. Stellen Sie sicher, dass Sie über die erforderlichen Zugriffsrechte verfügen, bevor Sie das Skript ausführen.
Beachten Sie auch, dass die Übersetzung mit der Google Translate API durchgeführt wird, sodass die Qualität der Übersetzung je nach Komplexität des Textes und den Fähigkeiten des Übersetzungsdienstes variieren kann.
API-Anfrage
Hinweis: Claude 3 Opus wird bald für die Bedrock API verfügbar sein.
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-opus-20240229",
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)