Google Slides API מאפשר לקרוא נתונים של מצגות, דפים ורכיבי דפים. בדף הזה מופיעות דוגמאות שמראות איך לבצע פעולות קריאה נפוצות באמצעות השיטות presentations.get ו-presentations.pages.get.
בדוגמאות האלה אנחנו משתמשים בערכי ה-placeholder הבאים:
- PRESENTATION_ID— מציין איפה צריך לספק את מזהה המצגת. אפשר למצוא את הערך של המזהה הזה מכתובת ה-URL של המצגת.
- PAGE_ID – מציין איפה מספקים את מזהה אובייקט הדף. אפשר לאחזר את הערך של המאפיין הזה מכתובת ה-URL או באמצעות בקשת קריאה של API.
הדוגמאות האלה מוצגות כבקשות HTTP כדי להיות ניטרליות מבחינת שפה. הדוגמאות מבוססות על מצגת לדוגמה, שבה 1EAYk18WDjIG-zp_0vLm3CsfQh_i8eXc67Jo2O9C6Vuc הוא PRESENTATION_ID. PAGE_ID של השקף הראשון במצגת הזו הוא ge63a4b4_1_0.
בדוגמאות שבהמשך נעשה שימוש במסכות שדות כדי להחזיר רק מידע ספציפי שנדרש לגבי המצגת, השקף והרכיב בדף. שימוש במסכות שדות משפר גם את הביצועים.
קריאת מזהי אובייקטים בשקף
בדוגמה הבאה של קוד presentations.get אפשר לראות איך מאחזרים רשימה של כל מזהי האובייקטים של השקפים מהמצגת. המזהים מוחזרים לפי הסדר של השקפים במצגת, ואפשר להשתמש בהם כדי לציין שקפים ספציפיים בבקשות API הבאות. אפשר לקבל את מזהי האובייקטים של דפי התבנית ודפי הפריסה באותה דרך, באמצעות fields=masters.objectId ו-fields=layout.objectId.
זהו פרוטוקול הבקשה לקריאת מזהי אובייקטים של שקפים:
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID?fields=slides.objectId
התגובה מורכבת מאובייקט Presentation שמכיל את מזהי האובייקטים שביקשתם:
{
"slides": [
{
"objectId": "ge63a4b4_1_0"
},
{
"objectId": "ge63a4b4_1_9"
},
{
"objectId": "ge63a4b4_1_23"
},
{
"objectId": "ge63a4b4_1_35"
},
{
"objectId": "ge63a4b4_1_43"
}
]
}קריאת מזהי אובייקטים של רכיבים מדף
בדוגמת הקוד הבאה של presentations.pages.get מוצג איך לאחזר רשימה של מזהי אובייקטים של כל רכיבי הדף בדף.
הפרוטוקול הבא הוא פרוטוקול הבקשה לקריאת מזהי אובייקטים של רכיבים מדף:
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.objectId
התשובה מורכבת מאובייקט Page שמכיל את מזהי האובייקטים שביקשתם:
{
"pageElements": [
{
"objectId": "ge63a4b4_1_5"
},
{
"objectId": "ge63a4b4_1_6"
},
{
"objectId": "ge63a4b4_1_7"
},
{
"objectId": "ge63a4b4_1_8"
}
]
}קריאת רכיבי צורה מדף
בדוגמת הקוד הבאה presentations.pages.get אפשר לראות איך מאחזרים רשימה של כל Shapes בדף. אפשר לאחזר סוגים אחרים של PageElement באמצעות הפרמטר fields. לדוגמה, הפונקציה
fields=pageElements(line,table) מחזירה רק מידע על
line ועל
table
מרכיבי דף, אם יש כאלה בדף.
הפרוטוקול הבא הוא פרוטוקול הבקשה לקריאת רכיבי צורה מדף:
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.shape
התשובה מורכבת מאובייקט Page שמכיל את רכיבי הצורה המבוקשים. הסוגריים המסולסלים הריקים מציינים רכיבים בדף שלא תואמים לסוג הצורה. במקרה הזה, אלה רכיבים של תמונות בדף.
{ "pageElements": [ {}, {}, { "shape": { "shapeProperties" { "outline" { "dashStyle": "SOLID", "outlineFill": { "solidFill": { "alpha": 1, "color": { "rgbColor": {} } }, }, "propertyState": "NOT_RENDERED", "weight": { "magnitude": 9525, "unit": "EMU" } }, "shadow": { "alignment": "BOTTOM_LEFT", "alpha": 1, "blurRadius": { "unit": "EMU" }, "color": { "rgbColor": {} }, "propertyState": "NOT_RENDERED", "rotateWithShape": false, "transform": { "scaleX": 1, "scaleY": 1, "unit": "EMU" }, "type": "OUTER" }, "shapeBackgroundFill" : { "propertyState": "NOT_RENDERED", "solidFill": { "alpha": 1, "color": { "rgbColor: { "blue": 1, "green": 1, "red": 1 } } } } }, "shapeType": "TEXT_BOX", "text": { "textElements": [ { "endIndex": 11, "paragraphMarker": { "style": { "alignment": "START", "direction": "LEFT_TO_RIGHT", "indentEnd": { "unit": "PT" }, "indentFirstLine": { "unit": "PT" }, "indentStart": { "unit": "PT" }, "lineSpacing": 100, "spaceAbove": { "unit": "PT" }, "spaceBelow": { "unit": "PT" }, "spacingMode": "COLLAPSE_LISTS" } } }, { "endIndex": 11, "textRun": { "content": "Baby Album\n", "style": { "backgroundColor": {}, "baselineOffset": "NONE", "bold": false, "fontFamily": "Arial", "fontSize": { "magnitude": 14, "unit": "PT" }, "foregroundColor": { "opaqueColor": { "rgbColor": {} } }, "italic": false, "smallCaps": false, "strikethrough": false, "underline": false } } } ] } } }, ... ] }