תפעול טבלאות

Google Slides API מאפשר ליצור ולערוך טבלאות בדפים. הדוגמאות באתר במאמר הזה מוצגות כמה פעולות נפוצות בטבלה באמצעות presentations.batchUpdate .

בדוגמאות האלה משתמשים במשתנים הבאים:

  • PRESENTATION_ID – מציין איפה אתם מספקים את מצגת מזהה. אפשר לגלות את הערך של המזהה בכתובת ה-URL של המצגת.
  • PAGE_ID – מציין איפה מספקים את אובייקט הדף מזהים. אפשר לאחזר את הערך הזה מכתובת ה-URL או באמצעות בקשת קריאה ל-API.
  • TABLE_ID – מציין איפה מספקים את הדף מזהה אובייקט ברכיב של שאיתה אתם עובדים. אפשר לציין את המזהה הזה לרכיבים שיוצרים (עם חלק הגבלות) או לאפשר ל-API של Slides ליצור אותו באופן אוטומטי. מזהי הרכיבים להיות נגישים באמצעות בקשת קריאה של API.

הדוגמאות האלה מוצגות כבקשות HTTP כך שהשפה תהיה ניטרלית. למידה איך לבצע עדכון בכמות גדולה בשפות שונות באמצעות Google API לספריות לקוח. מידע נוסף זמין בקטע הוספת צורות text.

צור טבלה

הבאים presentations.batchUpdate דוגמת הקוד מראה איך להשתמש CreateTableRequest כדי להוסיף טבלה לשקף שצוין על ידי PAGE_ID.

בטבלה הזו יש שמונה שורות וחמש עמודות. שימו לב שה-API של Slides מתעלמת מכל שדה מסוג size או transform שמסופק כחלק elementProperties. במקום זאת, ה-API יוצר טבלה שנמצאת במרכז השקף, מותאם למספר השורות והעמודות שצוין, אם זה אפשרי.

זה פרוטוקול הבקשה ליצירת טבלה:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "createTable": {
        "objectId": TABLE_ID,
        "elementProperties": {
          "pageObjectId": PAGE_ID,
        },
        "rows": 8,
        "columns": 5
      }
    }
  ]
}

מחיקה של שורות או עמודות בטבלה

הבאים presentations.batchUpdate דוגמת הקוד מראה איך להשתמש DeleteTableRowRequest להסרת השורה השישית. לאחר מכן היא משתמשת DeleteTableColumnRequest להסרת העמודה הרביעית. הטבלה מצוינת על ידי TABLE_ID גם rowIndex וגם columnIndex בתוך cellLocation מבוססים על אפס.

פרוטוקול הבקשה למחיקת שורות או עמודות בטבלה:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteTableRow": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        }
      }
    },
    {
      "deleteTableColumn": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        }
      }
    }
  ]
}

עריכת נתוני הטבלה

הבאים presentations.batchUpdate דוגמת הקוד מראה איך להשתמש DeleteTextRequest שיטה להסרת כל הטקסט בתא שבתוך textRange. הוא ואז משתמשת InsertTextRequest כדי להחליף אותו בטקסט החדש של "Kangaroo".

הטבלה מצוינת על ידי TABLE_ID. התא שהושפע נמצא ב- את השורה החמישית והעמודה השלישית. גם rowIndex וגם columnIndex בתוך הערכים cellLocation מבוססים על אפס.

זה פרוטוקול הבקשה לעריכת נתוני טבלה:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "deleteText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "textRange": {
          "type": "ALL",
        }
      }
    },
    {
      "insertText": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 4,
          "columnIndex": 2
        },
        "text": "Kangaroo",
        "insertionIndex": 0
      }
    }
  ]
}

עיצוב של שורת כותרת של טבלה

הבאים presentations.batchUpdate דוגמת הקוד מראה איך להשתמש UpdateTableCellPropertiesRequest כדי לעצב את שורת הכותרת של רכיב בטבלה, בתוך tableRange, שצוין על ידי TABLE_ID. לאחר מכן היא משתמשת TableCellProperties כדי להגדיר את צבע הרקע של שורת הכותרת לשחור.

כל בקשה הבאה משתמשת UpdateTextStyleRequest שיטה להגדרת עיצוב הטקסט בתא אחד בשורת הכותרת להדגשה, לבן 18 נקודות גופן Cambria בתוך textRange שלך צריך לחזור על הבקשה הזו עבור כל תא נוסף בכותרת.

גם rowIndex וגם columnIndex בתוך location וגם הערכים של cellLocation מבוססים על אפס.

זה פרוטוקול הבקשה לעיצוב שורת הכותרת של טבלה:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "updateTableCellProperties": {
        "objectId": TABLE_ID,
        "tableRange": {
          "location": {
            "rowIndex": 0,
            "columnIndex": 0
          },
          "rowSpan": 1,
          "columnSpan": 3
        },
        "tableCellProperties": {
          "tableCellBackgroundFill": {
            "solidFill": {
              "color": {
                "rgbColor": {
                  "red": 0.0,
                  "green": 0.0,
                  "blue": 0.0
                }
              }
            }
          }
        },
        "fields": "tableCellBackgroundFill.solidFill.color"
      }
    },
    {
      "updateTextStyle": {
        "objectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 0,
          "columnIndex": 0
        },
        "style": {
          "foregroundColor": {
            "opaqueColor": {
              "rgbColor": {
                "red": 1.0,
                "green": 1.0,
                "blue": 1.0
              }
            }
          },
          "bold": true,
          "fontFamily": "Cambria",
          "fontSize": {
            "magnitude": 18,
            "unit": "PT"
          }
        },
        "textRange": {
          "type": "ALL"
        },
        "fields": "foregroundColor,bold,fontFamily,fontSize"
      }
    },
    // Repeat the above request for each additional cell in the header row....
  ]
}

כך נראית שורת הכותרת המעוצבת אחרי העדכונים האלה:

עיצוב תוצאת המתכון של שורת הכותרת.

הוספת שורות או עמודות בטבלה

הבאים presentations.batchUpdate דוגמת הקוד מראה איך להשתמש InsertTableRowsRequest כדי להוסיף שלוש שורות מתחת לשורה השישית. לאחר מכן היא משתמשת InsertTableColumnsRequest להוספת שתי עמודות משמאל לעמודה הרביעית באותה טבלה.

הטבלה מצוינת על ידי TABLE_ID. גם rowIndex וגם הערכים columnIndex שבתוך cellLocation מבוססים על אפס.

זה פרוטוקול הבקשה להוספת שורות או עמודות בטבלה:

POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{
  "requests": [
    {
      "insertTableRows": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "rowIndex": 5
        },
        "insertBelow": true,
        "number": 3
      }
    },
    {
      "insertTableColumns": {
        "tableObjectId": TABLE_ID,
        "cellLocation": {
          "columnIndex": 3
        },
        "insertRight": false,
        "number": 2
      }
    }
  ]
}