Google Slides API を使用すると、プレゼンテーション、ページ、ページ要素のデータを読み取ることができます。このページの例は、presentations.get
メソッドと presentations.pages.get
メソッドの両方を使用して一般的な読み取りオペレーションを実行する方法を示しています。
これらの例では、次のプレースホルダを使用します。
- PRESENTATION_ID - プレゼンテーション ID を指定する場所を示します。この ID の値はプレゼンテーションの URL で確認できます。
- PAGE_ID - ページ オブジェクト ID を指定する場所を示します。この ID の値は URL から、または API の読み取りリクエストを使用して取得できます。
これらの例では、特定の言語に依存しない HTTP リクエストの形式を採用しています。これらの例は、PRESENTATION_ID が 1EAYk18WDjIG-zp_0vLm3CsfQh_i8eXc67Jo2O9C6Vuc
であるこちらのサンプル プレゼンテーションから読み取ります。このプレゼンテーションの最初のスライドの PAGE_ID は ge63a4b4_1_0
です。
この例では、フィールド マスクを使用して、プレゼンテーション、スライド、ページ要素に関する要求された特定の情報のみを返します。フィールド マスクを使用するとパフォーマンスも向上します。
スライド オブジェクト ID の読み取り
次の presentations.get
コードサンプルは、プレゼンテーションからすべてのスライド オブジェクト ID のリストを取得する方法を示しています。ID はスライド プレゼンテーションの順で返され、後に API リクエストで特定のスライドを指定する際にその ID を使用することができます。マスターページとレイアウト ページのオブジェクト ID は、fields=masters.objectId
と fields=layout.objectId
を使用して同様の方法で取得できます。
スライド オブジェクト ID を読み取るリクエスト プロトコルは次のとおりです。
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID?fields=slides.objectId
レスポンスは、リクエストされたオブジェクト ID を含む Presentation
オブジェクトで構成されます。
{ "slides": [ { "objectId": "ge63a4b4_1_0" }, { "objectId": "ge63a4b4_1_9" }, { "objectId": "ge63a4b4_1_23" }, { "objectId": "ge63a4b4_1_35" }, { "objectId": "ge63a4b4_1_43" } ] }
ページから要素のオブジェクト ID を読み取る
次の presentations.pages.get
コードサンプルは、ページ上にあるすべてのページ要素のオブジェクト ID のリストを取得する方法を示しています。
ページから要素のオブジェクト ID を読み取るリクエスト プロトコルは次のとおりです。
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.objectId
レスポンスは、リクエストされたオブジェクト ID を含む 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 } } } ] } } }, ... ] }