Las marcas de agua se utilizan comúnmente para especificar la propiedad o para evitar el uso no autorizado de los documentos. Por otro lado, también se utilizan para mostrar el estado de un documento, como un manuscrito, un borrador, etc. En este artículo, aprenderá cómo agregar una marca de agua de texto o imagen a las diapositivas de PowerPoint mediante programación usando Java.
- API de Java para agregar marcas de agua a las diapositivas de PowerPoint
- Agregar marca de agua de texto a las diapositivas de PowerPoint
- Agregar marca de agua de imagen a las diapositivas de PowerPoint
API de Java para agregar marcas de agua a las diapositivas de PowerPoint
Para agregar marcas de agua a las diapositivas de PowerPoint, usaremos Aspose.Slides for Java. Es una API de manipulación de presentaciones que le permite crear y manipular documentos de presentación desde las aplicaciones Java. Puede descargar la API o instalarla usando las siguientes configuraciones de Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-slides</artifactId>
<version>21.7</version>
<classifier>jdk16</classifier>
</dependency>
Agregar marca de agua de texto a las diapositivas de PowerPoint en Java
Los siguientes son los pasos para agregar una marca de agua de texto a las diapositivas de PowerPoint usando Java.
- Primero, cargue la presentación de PowerPoint usando la clase Presentation.
- Obtenga la referencia del patrón de diapositivas en un objeto IMasterSlide.
- Calcular la posición de la marca de agua según las dimensiones de presentación.
- Agregue una nueva forma automática a la colección Formas de la diapositiva y obtenga su referencia en el objeto IAutoForma.
- Agregue un marco de texto a la forma y configure su texto usando el método IAutoShape.addTextFrame(string).
- Establezca el tamaño de fuente, el color 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.
// Presentación abierta
Presentation pres = new Presentation("presentation.pptx");
try {
// Maestro de acceso
IMasterSlide master = pres.getMasters().get_Item(0);
Point2D.Float center = new Point2D.Float((float) pres.getSlideSize().getSize().getWidth() / 2,
(float) pres.getSlideSize().getSize().getHeight() / 2);
float width = 300;
float height = 300;
float x = (float) center.getX() - width / 2;
float y = (float) center.getY() - height / 2;
// Agregar forma
IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);
// Establecer tipo de relleno
watermarkShape.getFillFormat().setFillType(FillType.NoFill);
watermarkShape.getLineFormat().getFillFormat().setFillType(FillType.NoFill);
// Establecer ángulo de rotación
watermarkShape.setRotation(-45);
// Establecer texto
ITextFrame watermarkTextFrame = watermarkShape.addTextFrame("Watermark");
// Establecer fuente y color
IPortion watermarkPortion = watermarkTextFrame.getParagraphs().get_Item(0).getPortions().get_Item(0);
watermarkPortion.getPortionFormat().setFontHeight(52);
int alpha = 150, red = 200, green = 200, blue = 200;
watermarkPortion.getPortionFormat().getFillFormat().setFillType(FillType.Solid);
watermarkPortion.getPortionFormat().getFillFormat().getSolidFillColor()
.setColor(new Color(red, green, blue, alpha));
// Bloquear formas para que no se modifiquen
watermarkShape.getAutoShapeLock().setSelectLocked(true);
watermarkShape.getAutoShapeLock().setSizeLocked(true);
watermarkShape.getAutoShapeLock().setTextLocked(true);
watermarkShape.getAutoShapeLock().setPositionLocked(true);
watermarkShape.getAutoShapeLock().setGroupingLocked(true);
// Guardar la presentación
pres.save("watermarked-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
Producción
La siguiente es la captura de pantalla de la diapositiva de PowerPoint después de agregar la marca de agua.
Agregue una marca de agua de imagen a las diapositivas de PowerPoint en Java
Los siguientes son los pasos para agregar una marca de agua de imagen a las diapositivas de PowerPoint en Java.
- Primero, cargue la presentación de PowerPoint usando la clase Presentation.
- Obtenga la referencia del patrón de diapositivas en un objeto IMasterSlide.
- Calcular la posición de la marca de agua según las dimensiones de presentación.
- Agregue una nueva forma automática a la colección Formas de la diapositiva y obtenga su referencia en el objeto IAutoForma.
- Agregue una imagen a la presentación y obtenga su referencia en el objeto IPPImage.
- Establezca el tipo de relleno de IAutoShape en FillType.Picture.
- Configure la imagen de marca de agua usando el método IAutoShape.getFillFormat().getPictureFillFormat().getPicture().setImage(IPPImage).
- 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 imagen a las diapositivas de PowerPoint.
// Presentación abierta
Presentation pres = new Presentation("presentation.pptx");
try {
// Acceder al patrón de diapositivas
IMasterSlide master = pres.getMasters().get_Item(0);
Point2D.Float center = new Point2D.Float((float) pres.getSlideSize().getSize().getWidth() / 2,
(float) pres.getSlideSize().getSize().getHeight() / 2);
float width = 300;
float height = 300;
float x = (float) center.getX() - width / 2;
float y = (float) center.getY() - height / 2;
// Agregar forma
IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);
IPPImage image = pres.getImages().addImage(Files.readAllBytes(Paths.get("watermark.png")));
// Establecer tipo de relleno
watermarkShape.getFillFormat().setFillType(FillType.Picture);
watermarkShape.getFillFormat().getPictureFillFormat().getPicture().setImage(image);
watermarkShape.getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Stretch);
watermarkShape.getLineFormat().getFillFormat().setFillType(FillType.NoFill);
// Bloquear formas para que no se modifiquen
watermarkShape.getAutoShapeLock().setSelectLocked(true);
watermarkShape.getAutoShapeLock().setSizeLocked(true);
watermarkShape.getAutoShapeLock().setTextLocked(true);
watermarkShape.getAutoShapeLock().setPositionLocked(true);
watermarkShape.getAutoShapeLock().setGroupingLocked(true);
// Guardar la presentación
pres.save("watermarked-presentation-image.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
La siguiente es la captura de pantalla de la presentación después de agregar una marca de agua de imagen.
Obtenga una licencia de API gratuita
Puede usar Aspose.Slides for Java sin limitaciones de evaluación solicitando una licencia temporal.
Prueba en línea
Pruebe la siguiente herramienta de marca de agua en línea que se desarrolla con Aspose.Slides.
Conclusión
En este artículo, ha aprendido cómo agregar una marca de agua a las diapositivas de PowerPoint usando Java. La guía paso a paso y los ejemplos de código han demostrado cómo agregar marcas de agua de texto e imágenes a las presentaciones de PowerPoint. Además, puede consultar la documentación para explorar otras funciones de la API. Además, no dude en hacernos saber sus consultas a través de nuestro foro.