Título y subtítulo.
Como dije en la entrada anterior, dedicaré una serie de entradas a explicar el uso de la librería python-pptx para automatizar la creación de diapositivas Power Point. Pero antes de exponer estos procedimientos, me parece de interés concretar los contenidos mínimos que podemos pedirle a una presentación automatizada, ya que, de no ser así no es de extrañar que nos podamos perder ante el inmenso abanico de posibilidades que están a nuestra disposición; muchas de las cuales no nos aportan gran cosa en lo que hace referencia a nuestros objetivos, que son bastante modestos, en realidad.
Definir adecuadamente nuestro propósito es un punto de partida necesario, así que no es redundancia repetir aquí lo que ya enunciamos en otro momento: las presentaciones que tratamos de automatizar se identifican como tales por partida doble: por el soporte en el que se desarrollan y por el objetivo que cumplen (se trata de soportes "presentación" para la presentación de información). Lo segundo delimita claramente qué sí y qué no vamos a hacer (ni ejercicios, ni cualquier tipo de animación gráfica, ni juegos) ; lo primero es obvio, pero también tiene ciertas implicaciones, como la de que para crear otro tipo de documentos de aprendizaje mediante python, deberemos recurrir a otros medios (python-pptx no nos sirve para esos otros fines).
Y una presentación que trata de informar sobre una evaluación grupal o del resultado del análisis de unos datos debe contar con un mínimo de recursos en términos de servicio-soporte:
- Un título informativo
- Un índice
- Un contenido textual
- Y un contenido gráfico.
Únicamente cabe la posibilidad de establecer diferentes tipos de elementos gráficos, en función de la disponibilidad que ofrece python-pptx, ya que sería suficiente con un tipo gráfico genérico (soporte imagen), pero ya que es posible, puede ser interesante diferenciar entre la imagen, la tabla de datos y el gráfico estadístico; resulta que, además, los tres son de especial utilidad para nuestros fines.
Es cierto que otros tipos de presentaciones informativas pueden requerir otros componentes, pero con los indicados en nuestra lista es posible crear ese tipo de documentos, siempre y cuando no aspiremos a un amplio despliegue de transiciones y transformaciones, claro está; aunque personalmente considero que, salvo que busquemos objetivos específicos (como una demostración, por ejemplo), esos "dinamismos" tienen más inconvenientes que ventajas, siendo el principal de ellos el convertirse en fines en si mismos.
Dicho esto, para empezar la senda que nos hemos marcado, bueno será que empecemos por el principio: cómo crear una diapositiva que contenga el título de la presentación y una breve información complementaria. Para ello partiré del script creado en la entrada anterior, procedimiento que seguiré en las sucesivas hasta completar el proceso que se describe anteriormente.
En primer lugar, el tipo o patrón de diapositiva que creamos (diapo1 = mi_presenta.slide_layouts[0]) (en negrita) responde al tipo deseado, ya que contiene dos objetos: el título y el subtítulo, así que pasamos a trabajar con cada uno de ellos:
- Para el título, accedemos a la forma (titulo = diapo1.sahpes.title) y le añadimos el texto (titulo.text = "Presentación con Python")
- Y para el subtítulo, poco más o menos lo mismos:
- Accedemos al objeto (subtitulo = slide.placeholders[1])
- Y añadimos su contenido textual (subtitulo.text = "Elementos básicos de una presentación informativa.")
Como has podido ver, resulta sumamente sencillo acceder a los objetos que componen una diapositiva, tanto como crear la presentación y la propia diapositiva, siendo esta la principal ventaja de trabajar con python-pptx (en relación a hacerlo con OOo Basic).
Documento. En este enlace puedes acceder al script Python completo y actualizado, en realidad el segundo de esta serie.
Nota. Observa que en ambos script he establecido como dirección para guardar la presentación el directorio raíz de la unidad D. Si prefieres otra ubicación, deberás modificar esta línea de código.
No hay comentarios:
Publicar un comentario
Comenta esta entrada