Introducción

La API de Presentaciones de Google te permite crear y modificar archivos de Presentaciones de Google.

Las apps se pueden integrar en la API de Presentaciones de Google para crear atractivas presentaciones de diapositivas automáticamente a partir de los datos proporcionados por el usuario y el sistema. Por ejemplo, puedes usar los detalles del cliente de una base de datos y combinarlos con plantillas prediseñadas y opciones de configuración seleccionadas para crear presentaciones finalizadas en una fracción del tiempo que se necesitaría para crearlas de forma manual.

Descripción general de la API

La colección presentations proporciona métodos que te permiten obtener y actualizar elementos de la presentación.

La mayor parte de tu trabajo con la API de Presentaciones probablemente consistirá en crear y actualizar presentaciones. Para ello, usa el método batchUpdate, que toma una lista de objetos Request que te permiten realizar acciones como las siguientes:

  • Crear diapositivas
  • Agregar elementos a las diapositivas, como formas o tablas
  • Cómo insertar, cambiar y quitar texto
  • Aplica transformaciones a los elementos
  • Cómo cambiar el orden de las diapositivas

Consulta Actualizaciones por lotes para obtener más detalles. Consulta las guías de introducción para ver un ejemplo simple de cómo usar la API.

La estructura de una presentación

Una presentación de la API de Presentaciones consta de páginas que contienen elementos.

El ID de una presentación se puede derivar de la URL:

https://docs.google.com/presentation/d/presentationId/edit

El ID de presentación es una string que contiene letras, números y algunos caracteres especiales. La siguiente expresión regular se puede usar para extraer el ID de la presentación de una URL de Hojas de cálculo de Google:

/presentation/d/([a-zA-Z0-9-_]+)

Si estás familiarizado con la API de Drive, presentationId corresponde al ID del recurso Archivo.

Las páginas y los elementos de página se identifican mediante ID de objeto.

Páginas

Presentaciones de Google tiene los siguientes tipos de páginas:

Maestrías Las instancias principales de las diapositivas definen los estilos de texto, el fondo y los elementos de página predeterminados que aparecen en todas las diapositivas en las que se usan las diapositivas principales. Los elementos de página que deben aparecer en todas las diapositivas deben agregarse a la instancia principal. La mayoría de las presentaciones tienen un diseño maestro, pero algunas pueden tener varios o ninguno.
Diseños Los diseños sirven como plantilla para organizar los elementos de página de forma predeterminada en las diapositivas mediante un diseño. Cada diseño está asociado con un diseño maestro.
Presentaciones Estas páginas incluyen el contenido que presentas a tu público. La mayoría de las diapositivas se basan en un diseño maestro y un diseño. Puedes especificar qué diseño usar para cada diapositiva cuando se crea.
Notas Estas páginas incluyen el contenido de los documentos, que incluyen una forma con las notas del orador de la diapositiva. Cada diapositiva tiene una página de notas correspondiente. Solo se puede modificar el texto de la forma de las notas del orador con la API de Presentaciones.
Expertos en notas Los patrones de notas definen los elementos de página y estilos de texto predeterminados para todas las páginas de notas. Las instancias principales de las notas son de solo lectura en la API de Presentaciones.

Elementos de página

Los elementos de página son los componentes visuales que se colocan en las páginas. La API expone varios tipos de elementos de página:

Grupo Un conjunto de elementos de página que se tratan como una unidad individual. Se pueden mover, escalar y rotar juntos.
Forma Un objeto visual sin formato, como rectángulos, puntos suspensivos y cuadros de texto Las formas pueden contener texto, por lo que son los elementos de página más comunes a la hora de crear diapositivas.
Imagen Un gráfico importado a Presentaciones
Para videos Un video importado a Presentaciones
Línea Una línea, una curva o un conector
Tabla Una cuadrícula de contenido.
WordArt Un elemento de texto visual que se comporta más como una forma.
Gráfico de Hojas de cálculo Un gráfico importado a Presentaciones desde Hojas de cálculo de Google.

Actualizaciones por lotes

El método batchUpdate te permite actualizar muchos aspectos de una presentación. Los cambios se agrupan en un lote para que no se escriba ninguno de los demás (potencialmente dependientes) si una solicitud falla.

El método batchUpdate funciona mediante uno o más objetos Request, cada uno de los cuales especifica un solo tipo de solicitud que se realizará. Existen muchos tipos diferentes de solicitudes. A continuación, se muestra un desglose de los tipos de solicitudes, agrupadas en diferentes categorías.

Trabajo con Presentaciones: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Cómo trabajar con elementos de página: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Trabajar con tablas: CreateTableRequest
InsertTableRowsRequest
InsertTableColumnsRequest
DeleteTableRowRequest
DeleteTableColumnRequest
UpdateTableRowPropertiesRequest
UpdateTableColumnPropertiesRequest
UpdateTableBorderPropertiesRequest
UpdateTableCellPropertiesRequest
MergeTableCellsRequest
UnmergeTableCellsRequest .
DeleteObjectRequest
Trabajar con gráficos: CreateSheetsChartRequest
RefreshSheetsChartRequest
ReplaceAllShapesWithSheetsChartRequest
DeleteObjectRequest
Cómo trabajar con imágenes y video: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Trabajo con texto: InsertTextRequest
DeleteTextRequest
ReplaceAllTextRequest
CreateParagraphBulletsRequest
DeleteParagraphBulletsRequest
UpdateTextStyleRequest
UpdateParagraphStyleRequest

El método batchUpdate muestra un cuerpo de respuesta, que contiene una respuesta para cada solicitud. Cada respuesta ocupa el mismo índice que la solicitud correspondiente. En el caso de las solicitudes sin respuesta aplicable, la respuesta en ese índice estará vacía. Por lo general, las diversas solicitudes Create tienen respuestas, por lo que conoces el ID del objeto recién agregado.

Trabaja con ID de objetos

Una presentación de la API de Presentaciones consta de páginas y elementos de página. Estos objetos incluyen una string de ID de objeto que es única dentro de una presentación.

Especifica los ID de objeto en el momento de la creación

Cuando creas páginas o elementos de página con el método batchUpdate, tienes la opción de especificar un ID de objeto para el objeto nuevo. Esto te permite crear un objeto y modificarlo dentro de la misma solicitud batchUpdate, lo que minimiza la cantidad de llamadas a la API de Presentaciones y reduce el uso de la cuota.

En la mayoría de los casos, recomendamos generar un ID de objeto aleatorio. Por ejemplo, si usas Java, java.util.UUID.randomUUID().toString() debería funcionar bien.

Cuando tu aplicación quiera realizar un seguimiento de los objetos durante un período más largo, no confíes en el ID del objeto, ya que puede cambiar. Consulta la siguiente sección para obtener más detalles.

Realizar un seguimiento de los objetos sin usar el ID de objeto

Cuando realiza una solicitud a la API de Presentaciones, el ID de objeto se conserva normalmente. (Cualquier excepción se indica en la documentación de referencia del método). Hacer una copia de una presentación completa con la API de Drive también conserva los ID de objeto.

Sin embargo, no puedes depender de que el ID de un objeto no se modifique después de modificar una presentación en la IU de Presentaciones. Por ejemplo, si alguien usa la IU de Presentaciones para copiar y pegar un elemento de página y, luego, borra el original, el elemento tendrá un nuevo ID único y se perderá el ID que proporcionaste anteriormente mediante la API. Por lo tanto, no recomendamos que almacenes los ID de objeto en el almacenamiento de tu aplicación. En su lugar, debes encontrar objetos en la presentación por su contenido de texto o texto alternativo.

En las presentaciones nuevas, normalmente se usa un conjunto coherente de ID para diapositivas, instancias principales y cuadros de texto predeterminados. Estos ID están sujetos a cambios con el paso del tiempo, por lo que no recomendamos que dependas de esta función. En su lugar, busca los elementos que deseas modificar con el objeto de presentación que muestran las llamadas a create() o get().