התחלה מהירה: תוסף לסרגל ההתקדמות ב-Google Slides

קל לארגן דפים בעזרת אוספים אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.

משלימים את השלבים המתוארים בשאר הדף, ובתוך כ-5 דקות תוכלו ליצור תוסף ל-Google Slides שמוסיף סרגל התקדמות למצגת. תוכלו לקרוא עוד על התוסף Slides הזה ועל האופן שבו הוא פועל בסרטון שמשמאל.

להגדרה

  1. יוצרים מצגת חדשה ב-Google.
  2. מתוך המצגת החדשה, בוחרים בפריט בתפריט כלים > עורך סקריפטים. אם מוצג מסך פתיחה, לוחצים על פרויקט ריק.
  3. יש למחוק כל קוד בעורך הסקריפטים ולשנות את השם של Code.gs ל-progress.gs.

    שקפים/התקדמות/התקדמות.
    /**
     * @OnlyCurrentDoc Adds progress bars to a presentation.
     */
    const BAR_ID = 'PROGRESS_BAR_ID';
    const BAR_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.)
     */
    function onInstall(e) {
      onOpen();
    }
    
    /**
     * Trigger for opening a presentation.
     * @param {object} e The onOpen event.
     */
    function onOpen(e) {
      SlidesApp.getUi().createAddonMenu()
          .addItem('Show progress bar', 'createBars')
          .addItem('Hide progress bar', 'deleteBars')
          .addToUi();
    }
    
    /**
     * Create a rectangle on every slide with different bar widths.
     */
    function createBars() {
      deleteBars(); // Delete any existing progress bars
      const presentation = SlidesApp.getActivePresentation();
      const slides = presentation.getSlides();
      for (let i = 0; i < slides.length; ++i) {
        const ratioComplete = (i / (slides.length - 1));
        const x = 0;
        const y = presentation.getPageHeight() - BAR_HEIGHT;
        const barWidth = presentation.getPageWidth() * ratioComplete;
        if (barWidth > 0) {
          const bar = slides[i].insertShape(SlidesApp.ShapeType.RECTANGLE, x, y,
              barWidth, BAR_HEIGHT);
          bar.getBorder().setTransparent();
          bar.setLinkUrl(BAR_ID);
        }
      }
    }
    
    /**
     * Deletes all progress bar rectangles.
     */
    function deleteBars() {
      const presentation = SlidesApp.getActivePresentation();
      const slides = presentation.getSlides();
      for (let i = 0; i < slides.length; ++i) {
        const elements = slides[i].getPageElements();
        for (const el of elements) {
          if (el.getPageElementType() === SlidesApp.PageElementType.SHAPE &&
            el.asShape().getLink() &&
            el.asShape().getLink().getUrl() === BAR_ID) {
            el.remove();
          }
        }
      }
    }
  1. בוחרים בתפריט את האפשרות קובץ > שומרים הכול. נותנים שם לסקריפט החדש "סרגל הפעולות של ההתקדמות." ולוחצים על אישור. שם התסריט מוצג למשתמשי קצה בכמה מקומות, כולל תיבת הדו-שיח לאישור.

רוצה לנסות?

  1. חוזרים למצגת וטוענים מחדש את הדף.
  2. אחרי כמה שניות, בתפריט משנה תוספים יופיע תפריט משנה של ProgressBar. לוחצים על תוספים > ProgressBar > הצגת סרגל התקדמות.
  3. תיבת דו-שיח מציינת שהסקריפט דורש הרשאה. לוחצים על Continue. תיבת דו-שיח שנייה מבקשת הרשאה לשירותי Google ספציפיים. לחצו על אישור.
  4. יוצג סרגל התקדמות. כדי להסיר את סרגל ההתקדמות, לוחצים על תוספים > ProgressBar > הסתרת סרגל התקדמות.

פרסום

מכיוון שמדובר בתוסף לדוגמה, המדריך שלנו מסתיים כאן. אם פיתחתם תוסף אמיתי, השלב האחרון הוא לפרסם אותו כדי שאנשים אחרים יוכלו למצוא ולהתקין אותו.

מידע נוסף

כדי להרחיב את Google Slides עם Apps Script, עיינו במקורות המידע הבאים: