La API de Google Slides te permite crear, mover y borrar diapositivas. En los ejemplos de esta página, se muestran algunas operaciones comunes con diapositivas a través del método presentations.batchUpdate
.
En estos ejemplos, se usan las siguientes variables:
- PRESENTATION_ID: Indica dónde proporcionas el ID de la presentación. Puedes descubrir el valor de este ID en la URL de la presentación.
- PAGE_ID y PAGE_ID2: Indican dónde proporcionas los IDs de objetos de página. Puedes recuperar el valor de la URL o con una solicitud de lectura de la API.
Estos ejemplos se presentan como solicitudes HTTP para que sean independientes del idioma. Para obtener información sobre cómo implementar una actualización por lotes en diferentes lenguajes con las bibliotecas cliente de las APIs de Google, consulta las siguientes guías: Crea una diapositiva y Agrega formas y texto.
Cómo copiar una diapositiva
En el siguiente ejemplo de código de presentations.batchUpdate
, se muestra cómo usar el método DuplicateObjectRequest
para copiar una diapositiva y, luego, insertarla después de la original en la presentación.
La diapositiva original se especifica con PAGE_ID.
La solicitud te permite especificar si algunos o todos los IDs de los elementos de la página deben estar en la copia (con algunas restricciones). En este ejemplo, la diapositiva original contiene un elemento de tabla (especificado por TABLE_ELEMENT_ID) que se asigna a una tabla nueva (especificada por COPY_TABLE_ELEMENT_ID) en la copia de la diapositiva (especificada por COPY_PAGE_ID). A todos los demás elementos de la copia se les asignan IDs aleatorios.
Para obtener más información sobre cómo copiar un PageElement
, incluidos cuadros de texto, imágenes, tablas, formas básicas, líneas y videos incorporados, consulta el ejemplo Copia y edita un elemento.
A continuación, se muestra el protocolo de solicitud para copiar una diapositiva:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "duplicateObject": { "objectId": PAGE_ID, "objectIds": { "PAGE_ID": "COPY_PAGE_ID", "TABLE_ELEMENT_ID": "COPY_TABLE_ELEMENT_ID" } } } ] }
Crea una diapositiva
En el siguiente ejemplo de código de presentations.batchUpdate
, se muestra cómo usar el método CreateSlideRequest
para crear una diapositiva y, luego, insertarla como la cuarta diapositiva (con el índice insertionIndex
basado en cero) en la presentación.
La nueva diapositiva está configurada para usar el PredefinedLayout
de TITLE_AND_TWO_COLUMNS
. Puedes especificar una cadena para usarla como PAGE_ID de la diapositiva (con algunas restricciones) o permitir que la API genere el PAGE_ID si omites el campo en la solicitud.
A continuación, se muestra el protocolo de solicitud para crear una diapositiva:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSlide": { "objectId": "PAGE_ID", "insertionIndex": 3, "slideLayoutReference": { "predefinedLayout": "TITLE_AND_TWO_COLUMNS" } } } ] }
Crea una diapositiva y modifica los marcadores de posición
En el siguiente ejemplo de código de presentations.batchUpdate
, se muestra cómo usar el método CreateSlideRequest
para crear una diapositiva con el PredefinedLayout
de TITLE_AND_TWO_COLUMNS
.
Puedes especificar una cadena para usarla como PAGE_ID para la diapositiva (con algunas restricciones).
El método placeholderIdMappings
usa el Type
de TITLE
. El TITLE_ID hace referencia a la forma del marcador de posición de la diapositiva para que se pueda modificar.
A continuación, se muestra el protocolo de solicitud para crear una diapositiva y modificar marcadores de posición:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "createSlide": { "objectId": PAGE_ID, "slideLayoutReference": { "predefinedLayout": "TITLE_AND_TWO_COLUMNS" }, "placeholderIdMappings": [ { "layoutPlaceholder": { "type": "TITLE", "index": 0 }, "objectId": TITLE_ID, }, ], } }, { "insertText": { "objectId": TITLE_ID, "text": "This is my slide title", } }, ] }
Cómo mover diapositivas a una nueva posición
En la siguiente muestra de código de presentations.batchUpdate
, se muestra cómo usar el método UpdateSlidesPositionRequest
para tomar las dos diapositivas especificadas y moverlas al comienzo de la presentación, manteniendo su orden relativo.
Los IDs de diapositivas especificados (PAGE_ID y PAGE_ID2) se deben proporcionar en el orden de presentación existente, sin duplicados. El insertionIndex
basado en cero indica dónde se deben insertar las diapositivas, según el orden anterior al movimiento. El valor debe estar entre cero y la cantidad de diapositivas de la presentación, inclusive.
A continuación, se muestra el protocolo de solicitud para mover diapositivas a una nueva posición:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updateSlidesPosition": { "slideObjectIds": [ PAGE_ID, PAGE_ID2 ], "insertionIndex": 0 } } ] }
Cómo establecer una imagen de fondo para una diapositiva
En la siguiente muestra de código de presentations.batchUpdate
, se muestra cómo usar el método UpdatePagePropertiesRequest
para establecer la imagen de fondo de una diapositiva especificada por PAGE_ID. La API recupera la imagen con IMAGE_URL.
Se usa una máscara de campo para especificar que solo se debe cambiar el fondo de la diapositiva para conservar las demás propiedades. El uso de máscaras de campo también mejora el rendimiento.
Como alternativa, se puede usar un método UpdatePagePropertiesRequest
para establecer el fondo de una diapositiva en un color sólido.
A continuación, se muestra el protocolo de solicitud para establecer una imagen de fondo de diapositiva:
POST https://slides.googleapis.com/v1/presentations/PRESENTATION_ID:batchUpdate
{ "requests": [ { "updatePageProperties": { "objectId": PAGE_ID, "pageProperties": { "pageBackgroundFill": { "stretchedPictureFill": { "contentUrl": IMAGE_URL } } }, "fields": "pageBackgroundFill" } } ] }
Generar miniatura
Para generar una miniatura de la versión más reciente de una página específica de la presentación, llama al método presentations.pages.getThumbnail
, que devuelve una imagen en miniatura de la página como una URL de contenido. La URL de la imagen tiene una vida útil predeterminada de 30 minutos.
También puedes especificar los campos mimeType
y thumbnailSize
que se muestran con el campo ThumbnailProperties
como parámetro de consulta.
El siguiente es el protocolo de solicitud para generar la miniatura de la página con el parámetro ThumbnailProperties
establecido:
GET https://slides.googleapis.com/v1/presentations/PRESENTATION_ID/pages/PAGE_ID/thumbnail?thumbnailProperties.mimeType=PNG&thumbnailProperties.thumbnailSize=MEDIUM
{ "width": 800, "height": 450, "contentUrl": "CONTENT_URL" }