באמצעות Google Slides API אפשר ליצור ולערוך טבלאות בדפים. בדוגמאות שבדף הזה מוצגות כמה פעולות נפוצות בטבלה באמצעות השיטה presentations.batchUpdate
.
בדוגמאות האלה נעשה שימוש במשתנים הבאים:
- PRESENTATION_ID – כאן מציינים את מזהה המצגת. אפשר למצוא את הערך של המזהה הזה מכתובת ה-URL של המצגת.
- PAGE_ID – מציין איפה מספקים את המזהים של אובייקטי הדפים. אפשר לאחזר את הערך הזה מכתובת ה-URL או באמצעות בקשת קריאה ל-API.
- TABLE_ID – מציין את המיקום שבו מציינים את מזהה האובייקט של רכיב הדף לטבלה שבה עובדים. אפשר לציין את המזהה הזה לאלמנטים שאתם יוצרים (עם מגבלות מסוימות) או לאפשר ל-Slides API ליצור אותו באופן אוטומטי. אפשר לאחזר את מזהי הרכיבים באמצעות בקשת קריאה ל-API.
הדוגמאות האלה מוצגות כבקשות HTTP כדי שיהיו ניטרליות מבחינת שפה. במאמר הוספת צורות וטקסט מוסבר איך מטמיעים עדכון באצווה בשפות שונות באמצעות ספריות הלקוח של Google API.
צור טבלה
בדוגמת הקוד הבאה של presentations.batchUpdate
מוסבר איך להשתמש בשיטה CreateTableRequest
כדי להוסיף טבלה לשקופית שצוינה על ידי PAGE_ID.
בטבלה הזו יש שמונה שורות וחמישה עמודות. חשוב לזכור ש-Slides API מתעלם משדות 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
מוסבר איך להשתמש ב-method 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
. לאחר מכן, המערכת משתמשת ב-method InsertTextRequest
כדי להחליף אותו בטקסט החדש 'קנגורו'.
הטבלה מצוינה על ידי 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
כדי להגדיר את צבע הרקע של שורת הכותרת לשחור.
בכל אחת מהבקשות הבאות נעשה שימוש ב-method UpdateTextStyleRequest
כדי להגדיר את פורמט הטקסט בתא אחד בשורת הכותרת כקליגרפיה לבנה מודגשת בגודל 18pt של 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
כדי להוסיף שלוש שורות מתחת לשורה השישית. לאחר מכן, הקוד משתמש ב-method 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 } } ] }