Agregar marca de agua a PowerPoint PPT en Python

Las marcas de agua se utilizan comúnmente para proteger un documento o para especificar su propiedad. Por otro lado, se utilizan para mostrar el estado de un documento como manuscrito, borrador, etc. En este artículo, demostraremos cómo insertar marcas de agua en presentaciones de PowerPoint. Aprenderá cómo agregar una marca de agua de texto o imagen a las diapositivas PPT de PowerPoint en Python.

Biblioteca de Python para agregar marca de agua a las diapositivas de PowerPoint

Para agregar o quitar marcas de agua en las diapositivas de PPT, usaremos Aspose.Slides for Python via .NET. La biblioteca le permite crear y manipular presentaciones de PowerPoint sin problemas desde las aplicaciones de Python. Utilice el siguiente comando pip para instalar la biblioteca desde PyPI.

> pip install aspose.slides

Agregar marca de agua a las diapositivas PPT de PowerPoint en Python

Hay dos tipos de marcas de agua que se pueden agregar a las diapositivas de PowerPoint: imagen y texto. En la marca de agua basada en imágenes, se agrega una imagen a las diapositivas PPT. Considerando que, un fragmento de texto se coloca en las diapositivas en caso de marca de agua basada en texto. Las siguientes secciones cubren explícitamente ambos tipos de marca de agua.

Agregar marca de agua de texto a las diapositivas de PowerPoint en Python

Los siguientes son los pasos para agregar una marca de agua de texto a las diapositivas PPT en Python.

  • Primero, cargue el PowerPoint PPT/PPTX usando la clase Presentation.
  • Obtenga la referencia de la diapositiva a la que desea agregar la marca de agua.
  • Calcular la posición de la marca de agua.
  • Agregue una nueva forma automática para la marca de agua usando el método add\auto\shape().
  • Agregue un marco de texto a la forma usando el método add\text\frame().
  • Establezca el tamaño de fuente, el color, el orden y el ángulo de rotación de la marca de agua.
  • Bloquee la marca de agua para evitar su eliminación o modificación.
  • Finalmente, guarde el archivo de PowerPoint actualizado usando el método Presentation.save(string, SaveFormat).

El siguiente ejemplo de código muestra cómo agregar una marca de agua de texto a las diapositivas de PowerPoint.

import aspose.slides as slides
import aspose.pydrawing as drawing

# load presentation
with slides.Presentation("presentation.pptx") as presentation:
    # select slide
    slide = presentation.slides[0]

    # set watermark position
    center = drawing.PointF(presentation.slide_size.size.width / 2, presentation.slide_size.size.height / 2)
    width = 300
    height = 300
    x = center.x - width / 2
    y = center.y - height / 2

    # add watermark
    watermarkShape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, x, y, height, width)
    watermarkShape.name = "watermark"
    watermarkShape.fill_format.fill_type = slides.FillType.NO_FILL
    watermarkShape.line_format.fill_format.fill_type = slides.FillType.NO_FILL

    # set watermark text, font and color
    watermarkTextFrame = watermarkShape.add_text_frame("Watermark")
    watermarkPortion = watermarkTextFrame.paragraphs[0].portions[0]
    watermarkPortion.portion_format.font_height = 52        
    watermarkPortion.portion_format.fill_format.fill_type = slides.FillType.SOLID
    watermarkPortion.portion_format.fill_format.solid_fill_color.color = drawing.Color.red

    # lock watermark to avoid modification
    watermarkShape.shape_lock.select_locked = True
    watermarkShape.shape_lock.size_locked = True
    watermarkShape.shape_lock.text_locked = True
    watermarkShape.shape_lock.position_locked = True
    watermarkShape.shape_lock.grouping_locked = True

    # set rotation
    watermarkShape.rotation = -45

    # send to back
    slide.shapes.reorder(0, watermarkShape)

    # save presentation
    presentation.save("text-watermark-slide.pptx", slides.export.SaveFormat.PPTX)

Para agregar la marca de agua a todas las diapositivas, puede recorrer las diapositivas o agregar la marca de agua a la diapositiva maestra, como se muestra en el siguiente ejemplo de código.

import aspose.slides as slides
import aspose.pydrawing as drawing

# load presentation
with slides.Presentation("presentation.pptx") as presentation:
    # select slide
    master = presentation.masters[0]

    # set watermark position
    center = drawing.PointF(presentation.slide_size.size.width / 2, presentation.slide_size.size.height / 2)
    width = 300
    height = 300
    x = center.x - width / 2
    y = center.y - height / 2

    # add watermark
    watermarkShape = master.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, x, y, height, width)
    watermarkShape.name = "watermark"
    watermarkShape.fill_format.fill_type = slides.FillType.NO_FILL
    watermarkShape.line_format.fill_format.fill_type = slides.FillType.NO_FILL

    # set watermark text, font and color
    watermarkTextFrame = watermarkShape.add_text_frame("Watermark")
    watermarkPortion = watermarkTextFrame.paragraphs[0].portions[0]
    watermarkPortion.portion_format.font_height = 52        
    watermarkPortion.portion_format.fill_format.fill_type = slides.FillType.SOLID
    watermarkPortion.portion_format.fill_format.solid_fill_color.color = drawing.Color.red

    # lock watermark to avoid modification
    watermarkShape.shape_lock.select_locked = True
    watermarkShape.shape_lock.size_locked = True
    watermarkShape.shape_lock.text_locked = True
    watermarkShape.shape_lock.position_locked = True
    watermarkShape.shape_lock.grouping_locked = True

    # send to back
    master.shapes.reorder(0, watermarkShape)

    # set rotation
    watermarkShape.rotation = -45

    # save presentation
    presentation.save("text-watermark-ppt.pptx", slides.export.SaveFormat.PPTX)

La siguiente es la captura de pantalla de la diapositiva de PowerPoint después de agregar la marca de agua.

Agregar marca de agua de texto a las diapositivas de PowerPoint en Python

Agregue una marca de agua de imagen a las diapositivas de PowerPoint en Python

Los siguientes son los pasos para agregar una marca de agua de imagen a las diapositivas de PowerPoint en Python.

  • Primero, cargue la presentación de PowerPoint usando la clase Presentation.
  • Obtenga la referencia de la diapositiva a la que desea agregar la marca de agua.
  • Calcular la posición de la marca de agua.
  • Cargue la imagen de la marca de agua desde el archivo.
  • Agregue una nueva forma para la marca de agua usando el método add\auto\shape() y establezca shape.fill\format.fill\type en FillType.PICTURE.
  • Establezca la imagen de marca de agua usando la propiedad shape.fill\format.picture\fill\format.picture.image.
  • Establezca el orden de la marca de agua y bloquéela para evitar modificaciones.
  • Finalmente, guarde el PPT actualizado usando el método Presentation.save(string, SaveFormat).

El siguiente ejemplo de código muestra cómo agregar una marca de agua de imagen a las diapositivas de PowerPoint.

import aspose.slides as slides
import aspose.pydrawing as drawing

# load presentation
with slides.Presentation("presentation.pptx") as presentation:
    # select slide
    slide = presentation.slides[0]

    # set watermark position
    center = drawing.PointF(presentation.slide_size.size.width / 2, presentation.slide_size.size.height / 2)
    width = 100
    height = 100
    x = center.x - width / 2
    y = center.y - height / 2

    # load image
    with open("python-logo.png", "rb") as fs:
        data = fs.read()
        image = presentation.images.add_image(data)

        # add watermark
        watermarkShape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, x, y, height, width)
        watermarkShape.name = "watermark"

        # set image for watermark
        watermarkShape.fill_format.fill_type = slides.FillType.PICTURE
        watermarkShape.fill_format.picture_fill_format.picture.image = image
        watermarkShape.fill_format.picture_fill_format.picture_fill_mode = slides.PictureFillMode.STRETCH
        watermarkShape.line_format.fill_format.fill_type = slides.FillType.NO_FILL

        # send to back
        slide.shapes.reorder(0, watermarkShape)

        # lock watermark to avoid modification
        watermarkShape.shape_lock.select_locked = True
        watermarkShape.shape_lock.size_locked = True
        watermarkShape.shape_lock.text_locked = True
        watermarkShape.shape_lock.position_locked = True
        watermarkShape.shape_lock.grouping_locked = True

    # save presentation
    presentation.save("image-watermark-ppt.pptx", slides.export.SaveFormat.PPTX)

La siguiente es la captura de pantalla de la diapositiva PPT después de agregar una marca de agua de imagen.

Agregue una marca de agua de imagen a las diapositivas de PowerPoint en Python

Eliminar marca de agua de diapositivas PPT en Python

En las secciones anteriores, debe haber notado que hemos asignado un nombre a las formas de marca de agua. Este nombre se usa para filtrar las formas que se usan como marca de agua. Así, podemos acceder, modificar o eliminar las formas de la marca de agua fácilmente. El siguiente ejemplo de código muestra cómo eliminar las marcas de agua que hemos agregado a las diapositivas PPT en Python.

import aspose.slides as slides
import aspose.pydrawing as drawing

# load presentation
with slides.Presentation("text-watermark-slide.pptx") as presentation:
    # select slide
    slide = presentation.slides[0]

    shapesToRemove=[]

    # loop through all the shapes in slide
    for i in range(len(slide.shapes)):
        shape = slide.shapes[i]

        # if shape is watermark
        if shape.name == "watermark":                
            shapesToRemove.append(shape)

    # loop through all the shapes to be removed
    for i in range(len(shapesToRemove)):
        # remove shape
        slide.shapes.remove(shapesToRemove[i])

    # save presentation
    presentation.save("remove-watermark.pptx", slides.export.SaveFormat.PPTX)

Obtenga una licencia gratis

Puede usar Aspose.Slides for Python a través de .NET sin limitaciones de evaluación solicitando una licencia temporal.

Conclusión

En este artículo, ha aprendido cómo agregar una marca de agua a las diapositivas de PowerPoint en Python. Hemos cubierto cómo agregar marcas de agua de texto e imagen a las diapositivas PPT. Además, ha visto cómo eliminar la marca de agua de un PPT de PowerPoint mediante programación. Además, puede leer la documentación para explorar otras funciones de Aspose.Slides for Python. Además, puede publicar sus consultas en nuestro foro.

Ver también

Información: Es posible que desee consultar las herramientas en línea gratuitas que ofrece Aspose.Slides para agregar marcas de agua y eliminar marcas de agua de las presentaciones de PowerPoint.