Informieren Sie sich über die Funktionsweise der Lösung.
Informationen zu den Aufgaben der Apps Script-Dienste in der Lösung
Richten Sie das Script ein.
Führen Sie das Skript aus.
Informationen zu dieser Lösung
Mit dieser Lösung können Sie den Folien in Ihrer Präsentation eine Fortschrittsanzeige hinzufügen.
Funktionsweise
Das Script berechnet, wie viele Folien in der Präsentation enthalten sind, und fügt unten auf jeder Folie ein Rechteck hinzu. Das Script erhöht die Breite jedes Rechtecks, um den Fortschritt auf den Folien zu zeigen.
Apps Script-Dienste
Für diese Lösung wird der folgende Dienst verwendet:
Google Präsentationen: Hiermit werden die Folien einer Präsentation abgerufen und jeder Folie wird ein Rechteck hinzugefügt.
Vorbereitung
Für die Verwendung dieses Beispiels sind die folgenden Voraussetzungen erforderlich:
Ein Google-Konto (für Google Workspace-Konten ist möglicherweise die Administratorzustimmung erforderlich).
Einen Webbrowser mit Internetzugriff.
Script einrichten
Klicken Sie auf die folgende Schaltfläche, um eine Kopie der Präsentation Prognose in Google Präsentationen zu erstellen. Das Apps Script-Projekt für diese Lösung ist an die Präsentation angehängt.
Kopie erstellen
Klicken Sie in der Präsentation auf Erweiterungen>Fortschrittsanzeige>Fortschrittsanzeige anzeigen.
Autorisieren Sie das Script, wenn Sie dazu aufgefordert werden.
Wenn auf dem OAuth-Zustimmungsbildschirm die Warnung Diese App ist nicht bestätigt angezeigt wird, wählen Sie Erweitert>Zu {Project Name} (unsicher) aus.
Klicken Sie noch einmal auf Erweiterungen>Fortschrittsanzeige>Fortschrittsanzeige einblenden.
Wenn Sie die Fortschrittsanzeige entfernen möchten, klicken Sie auf Erweiterungen>Fortschrittsanzeige>Fortschrittsanzeige ausblenden.
Code ansehen
Wenn Sie den Apps Script-Code für diese Lösung ansehen möchten, klicken Sie unten auf Quellcode ansehen:
/** * @OnlyCurrentDoc Adds progress bars to a presentation. */constBAR_ID='PROGRESS_BAR_ID';constBAR_HEIGHT=10;// px/** * Runs when the add-on is installed. * @param {object} e The event parameter for a simple onInstall trigger. To * determine which authorization mode (ScriptApp.AuthMode) the trigger is * running in, inspect e.authMode. (In practice, onInstall triggers always * run in AuthMode.FULL, but onOpen triggers may be AuthMode.LIMITED or * AuthMode.NONE.) */functiononInstall(e){onOpen();}/** * Trigger for opening a presentation. * @param {object} e The onOpen event. */functiononOpen(e){SlidesApp.getUi().createAddonMenu().addItem('Showprogressbar','createBars').addItem('Hideprogressbar','deleteBars').addToUi();}/** * Create a rectangle on every slide with different bar widths. */functioncreateBars(){deleteBars();// Delete any existing progress barsconstpresentation=SlidesApp.getActivePresentation();constslides=presentation.getSlides();for(leti=0;i < slides.length;++i){constratioComplete=(i/(slides.length-1));constx=0;consty=presentation.getPageHeight()-BAR_HEIGHT;constbarWidth=presentation.getPageWidth()*ratioComplete;if(barWidth > 0){constbar=slides[i].insertShape(SlidesApp.ShapeType.RECTANGLE,x,y,barWidth,BAR_HEIGHT);bar.getBorder().setTransparent();bar.setLinkUrl(BAR_ID);}}}/** * Deletes all progress bar rectangles. */functiondeleteBars(){constpresentation=SlidesApp.getActivePresentation();constslides=presentation.getSlides();for(leti=0;i < slides.length;++i){constelements=slides[i].getPageElements();for(constelofelements){if(el.getPageElementType()===SlidesApp.PageElementType.SHAPE&&
el.asShape().getLink()&&
el.asShape().getLink().getUrl()===BAR_ID){el.remove();}}}}
Beitragende
Dieses Beispiel wird von Google mithilfe von Google Developer Experts verwaltet.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2024-12-22 (UTC)."],[[["This Google Apps Script solution adds a progress bar to the bottom of Google Slides presentations to visually track progress through the slides."],["The script uses the Slides service to calculate the number of slides, add a rectangle shape to each slide, and dynamically adjust the rectangle's width to represent progress."],["Users can easily install the script by making a copy of the provided presentation and authorizing the script to access their Google Slides."],["The progress bar can be shown or hidden using the \"Progress bar\" menu found under \"Extensions\" in Google Slides after installation."],["Developers can review and modify the source code, which is publicly available on GitHub, for customization or further development."]]],["This solution adds a progress bar to Google Slides presentations using Apps Script. The script calculates the total slides and adds a rectangle to the bottom of each slide, increasing the rectangle's width to visually represent progress. Users copy a sample presentation, authorize the script, and then run it to create or remove the progress bars via the \"Extensions\" menu. It utilizes the Slides service to manipulate slides and shapes, adding and deleting these elements.\n"]]