Introducción

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

Las apps pueden integrarse en la API de Presentaciones de Google para crear presentaciones de diapositivas hermosas automáticamente a partir de los datos que proporcionan el usuario y el sistema. Por ejemplo, puedes usar los detalles de los clientes de una base de datos y combinarlos con plantillas prediseñadas y opciones de configuración seleccionadas para crear presentaciones terminadas en una fracción del tiempo que tardarías en crearlas de forma manual.

Descripción general de la API

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

Es probable que la mayor parte de tu trabajo con la API de Slides sea crear y actualizar presentaciones. Para ello, usarás el método batchUpdate, que toma una lista de objetos Request que te permiten hacer lo siguiente:

  • 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 extremo a extremo sobre cómo usar la API.

La estructura de una presentación

Una presentación en la API de Slides consta de páginas, que contienen elementos de página.

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

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

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

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

Si conoces la API de Drive, presentationId corresponde al ID del recurso File.

Las páginas y los elementos de página se identifican con IDs de objetos.

Páginas

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

Máster Las diapositivas maestras definen los estilos de texto, el fondo y los elementos de página predeterminados que aparecen en todas las diapositivas que usan esta plantilla. Los elementos de página que deben aparecer en todas las diapositivas se deben agregar a la diapositiva maestra. La mayoría de las presentaciones tienen un maestro, pero algunas pueden tener varios o ninguno.
Diseños Los diseños sirven como plantilla para la forma en que se organizarán los elementos de la página de forma predeterminada en las diapositivas con un diseño. Cada diseño está asociado con un maestro.
Presentaciones Estas páginas contienen el contenido que presentas a tu público. La mayoría de las diapositivas se basan en un modelo y un diseño. Puedes especificar qué diseño usar para cada diapositiva cuando la creas.
Notas Estas páginas contienen el contenido de los folletos de presentación, incluida una forma que contiene las notas del orador de la diapositiva. Cada diapositiva tiene una página de notas correspondiente. Solo se puede modificar el texto en la forma de las notas del orador con la API de Presentaciones.
Maestros de notas Los documentos maestros de notas definen los estilos de texto y los elementos de página predeterminados para todas las páginas de notas. Los documentos maestros de notas son de solo lectura en la API de Slides.

Elementos de página

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

Grupo Es 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 simple, como rectángulos, elipses y cuadros de texto. Las formas pueden contener texto, por lo que son los elementos de página más comunes para crear diapositivas.
Imagen Gráfico importado en Presentaciones.
Video Un video importado a Presentaciones
Línea Una línea, una curva o un conector visual.
Tabla Una cuadrícula de contenido
WordArt Es un elemento de texto visual que se comporta más como una forma.
SheetsChart 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, si una solicitud falla, no se escriba ninguno de los otros cambios (potencialmente dependientes).

El método batchUpdate funciona tomando 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, agrupados en diferentes categorías.

Trabajar con Presentaciones: CreateSlideRequest
UpdateSlidesPositionRequest
DuplicateObjectRequest
UpdatePagePropertiesRequest
DeleteObjectRequest
Cómo trabajar con elementos de página: CreateShapeRequest
CreateLineRequest
UpdatePageElementTransformRequest
UpdateShapePropertiesRequest
DuplicateObjectRequest
DeleteObjectRequest
Trabaja 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 videos: CreateImageRequest
CreateVideoRequest
UpdateImagePropertiesRequest
UpdateVideoPropertiesRequest
ReplaceAllShapesWithImageRequest
DuplicateObjectRequest
DeleteObjectRequest
Cómo trabajar 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 una respuesta aplicable, la respuesta en ese índice estará vacía. Por lo general, las diversas solicitudes de Create tienen respuestas, por lo que conoces el ID del objeto agregado recientemente.

Cómo trabajar con IDs de objetos

Una presentación en la API de Slides se compone de páginas y elementos de página. Estos objetos incluyen una cadena de ID de objeto que es única dentro de una presentación.

Especifica los IDs de los objetos en la creación

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

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

Cuando tu aplicación quiera hacer un seguimiento de los objetos durante un período más prolongado, no dependas del ID del objeto, ya que puede cambiar. Consulta la siguiente sección para obtener más detalles.

Cómo hacer un seguimiento de los objetos sin usar el ID del objeto

Cuando realizas una solicitud a la API de Presentaciones, el ID del objeto se conserva de forma habitual. (Todas las excepciones se indican 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 IDs de objeto.

Sin embargo, no puedes depender de que un ID de objeto no cambie después de que se modifique 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 de página ahora tendrá un nuevo ID único, y se perderá el ID que proporcionaste anteriormente a través de la API. Por lo tanto, no te recomendamos que almacenes IDs de objetos 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.

Por lo general, las presentaciones recién creadas usan un conjunto coherente de IDs para las diapositivas, los objetos maestros y los cuadros de texto predeterminados. Estos IDs están sujetos a cambios con el tiempo, por lo que no te 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().