Leitura básica

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

Estes exemplos usam os seguintes marcadores de posição:

  • 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 de página. É possível recuperar o valor para isso no URL ou usando uma solicitação de leitura de API.

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

Os exemplos aqui usam máscaras de campo para retornar apenas informações solicitadas específicas 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 objetos de slides

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

Confira abaixo o protocolo de solicitação para ler os IDs dos objetos do slide:

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 objeto 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 objetos de elementos de uma página

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

Confira abaixo o protocolo de solicitação para ler IDs de objetos de elementos de 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 que contém os IDs de objeto 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 abaixo mostra como recuperar uma lista de todos os Shapes em uma página. É possível recuperar outros tipos de PageElement especificando-os com o parâmetro fields. Por exemplo, fields=pageElements(line,table) só retorna informações sobre elementos da página line e table, se houver algum deles na página.

Confira abaixo 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 que contém os elementos de forma solicitados. Os colchetes vazios indicam elementos de página que não são do tipo de forma. Nesse caso, eles 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
                }
              }
            }
          ]
        }
      }
    },
    ...
  ]
}