Leitura básica

A Google Slides API permite ler dados de apresentações, páginas e elementos de página. Os exemplos nesta página mostram como executar operações de leitura comuns usando os métodos presentations.get e presentations.pages.get.

Esses exemplos usam os seguintes marcadores:

  • PRESENTATION_ID: indica onde você fornece o ID da apresentação. Você pode descobrir o valor desse ID no URL da apresentação.
  • PAGE_ID: indica onde você fornece o ID do objeto da página. Recupere o valor dele no URL ou usando uma solicitação de leitura da API.

Esses exemplos são apresentados como solicitações HTTP para serem neutros em relação à linguagem. Os exemplos leram esta apresentação de exemplo, que tem 1EAYk18WDjIG-zp_0vLm3CsfQh_i8eXc67Jo2O9C6Vuc como PRESENTATION_ID. O PAGE_ID do primeiro slide desta apresentação é o ge63a4b4_1_0.

Nestes exemplos, usamos máscaras de campo para retornar apenas informações específicas solicitadas sobre a apresentação, o slide e o elemento da página. O uso de máscaras de campo também melhora o desempenho.

Ler IDs de objeto de slides

O exemplo de código presentations.get a seguir mostra como recuperar uma lista de todos os IDs de objeto de slides da apresentação. Os IDs são retornados na ordem da apresentação de slides e podem ser usados para indicar slides específicos em solicitações de API subsequentes. É possível conseguir os IDs de objeto das páginas mestre e de layout da mesma maneira, usando fields=masters.objectId e fields=layout.objectId.

Veja a seguir o protocolo de solicitação para ler os IDs de objeto de slides:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID?fields=slides.objectId

A resposta consiste em um objeto Presentation que contém os IDs de objetos solicitados:

{
  "slides": [
    {
      "objectId": "ge63a4b4_1_0"
    },
    {
      "objectId": "ge63a4b4_1_9"
    },
    {
      "objectId": "ge63a4b4_1_23"
    },
    {
      "objectId": "ge63a4b4_1_35"
    },
    {
      "objectId": "ge63a4b4_1_43"
    }
  ]
}

Ler IDs de objeto de elementos de uma página

O exemplo de código presentations.pages.get a seguir mostra como recuperar uma lista de IDs de objetos para todos os elementos de uma página.

Veja a seguir o protocolo de solicitação para ler IDs de objeto de elementos em uma página:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.objectId

A resposta consiste em um objeto Page contendo os IDs de objetos solicitados:

{
  "pageElements": [
    {
      "objectId": "ge63a4b4_1_5"
    },
    {
      "objectId": "ge63a4b4_1_6"
    },
    {
      "objectId": "ge63a4b4_1_7"
    },
    {
      "objectId": "ge63a4b4_1_8"
    }
  ]
}

Ler elementos de forma de uma página

O exemplo de código presentations.pages.get a seguir mostra como recuperar uma lista de todas as Shapes em uma página. É possível recuperar outros tipos de PageElement especificando-os usando o parâmetro fields. Por exemplo, fields=pageElements(line,table) só retorna informações sobre os elementos de página line e table, se houver algum na página.

Veja a seguir o protocolo de solicitação para ler elementos de forma de uma página:

GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID?fields=pageElements.shape

A resposta consiste em um objeto Page com os elementos de forma solicitados. As chaves vazias indicam elementos de página que não são do tipo de forma. Neste caso, são elementos de página de imagem.

{
  "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
                }
              }
            }
          ]
        }
      }
    },
    ...
  ]
}