As marcas d’água são comumente usadas para especificar a propriedade ou para impedir o uso não autorizado dos documentos. Por outro lado, eles também são usados para exibir o status de um documento, como um manuscrito, rascunho, etc. Neste artigo, você aprenderá como adicionar texto ou marca d’água de imagem a slides do PowerPoint programaticamente usando Java.
- API Java para adicionar marca d’água a slides do PowerPoint
- Adicionar marca d’água de texto aos slides do PowerPoint
- Adicionar marca d’água de imagem a slides do PowerPoint
API Java para adicionar marca d’água a slides do PowerPoint
Para adicionar marcas d’água aos slides do PowerPoint, usaremos Aspose.Slides for Java. É uma API de manipulação de apresentação que permite criar e manipular documentos de apresentação de dentro dos aplicativos Java. Você pode baixar a API ou instalá-la usando as seguintes configurações do 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>
Adicionar marca d’água de texto a slides do PowerPoint em Java
A seguir estão as etapas para adicionar uma marca d’água de texto aos slides do PowerPoint usando Java.
- Primeiro, carregue a apresentação do PowerPoint usando a classe Apresentação.
- Obtenha a referência do slide mestre em um objeto IMasterSlide.
- Calcule a posição da marca d’água de acordo com as dimensões de apresentação.
- Adicione uma nova forma automática à coleção Shapes do slide e obtenha sua referência no objeto IAutoShape.
- Adicione o quadro de texto à forma e defina seu texto usando o método IAutoShape.addTextFrame(string).
- Defina o tamanho da fonte, a cor e o ângulo de rotação da marca d’água.
- Bloqueie a marca d’água para evitar a remoção ou modificação.
- Finalmente, salve o arquivo PowerPoint atualizado usando o método Presentation.save(string, SaveFormat).
O exemplo de código a seguir mostra como adicionar uma marca d’água de texto aos slides do PowerPoint.
// Abrir apresentação
Presentation pres = new Presentation("presentation.pptx");
try {
// Mestre de acesso
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;
// Adicionar forma
IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);
// Definir tipo de preenchimento
watermarkShape.getFillFormat().setFillType(FillType.NoFill);
watermarkShape.getLineFormat().getFillFormat().setFillType(FillType.NoFill);
// Definir ângulo de rotação
watermarkShape.setRotation(-45);
// Definir texto
ITextFrame watermarkTextFrame = watermarkShape.addTextFrame("Watermark");
// Definir fonte e cor
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 de modificação
watermarkShape.getAutoShapeLock().setSelectLocked(true);
watermarkShape.getAutoShapeLock().setSizeLocked(true);
watermarkShape.getAutoShapeLock().setTextLocked(true);
watermarkShape.getAutoShapeLock().setPositionLocked(true);
watermarkShape.getAutoShapeLock().setGroupingLocked(true);
// Salve a apresentação
pres.save("watermarked-presentation.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
Resultado
A seguir está a captura de tela do slide do PowerPoint depois de adicionar a marca d’água.
Adicionar marca d’água de imagem a slides do PowerPoint em Java
A seguir estão as etapas para adicionar uma marca d’água de imagem aos slides do PowerPoint em Java.
- Primeiro, carregue a apresentação do PowerPoint usando a classe Apresentação.
- Obtenha a referência do slide mestre em um objeto IMasterSlide.
- Calcule a posição da marca d’água de acordo com as dimensões de apresentação.
- Adicione uma nova forma automática à coleção Shapes do slide e obtenha sua referência no objeto IAutoShape.
- Adicione a imagem à apresentação e obtenha sua referência no objeto IPPImage.
- Defina o tipo de preenchimento de IAutoShape como FillType.Picture.
- Defina a imagem da marca d’água usando o método IAutoShape.getFillFormat().getPictureFillFormat().getPicture().setImage(IPPImage).
- Bloqueie a marca d’água para evitar a remoção ou modificação.
- Finalmente, salve o arquivo PowerPoint atualizado usando o método Presentation.save(string, SaveFormat).
O exemplo de código a seguir mostra como adicionar uma marca d’água de imagem a slides do PowerPoint.
// Abrir apresentação
Presentation pres = new Presentation("presentation.pptx");
try {
// Acessar slide mestre
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;
// Adicionar forma
IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);
IPPImage image = pres.getImages().addImage(Files.readAllBytes(Paths.get("watermark.png")));
// Definir tipo de preenchimento
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 de modificação
watermarkShape.getAutoShapeLock().setSelectLocked(true);
watermarkShape.getAutoShapeLock().setSizeLocked(true);
watermarkShape.getAutoShapeLock().setTextLocked(true);
watermarkShape.getAutoShapeLock().setPositionLocked(true);
watermarkShape.getAutoShapeLock().setGroupingLocked(true);
// Salve a apresentação
pres.save("watermarked-presentation-image.pptx", SaveFormat.Pptx);
} finally {
if (pres != null)
pres.dispose();
}
A seguir está a captura de tela da apresentação após adicionar uma marca d’água de imagem.
Obtenha uma licença de API gratuita
Você pode usar o Aspose.Slides for Java sem limitações de avaliação solicitando uma licença temporária.
Experimente on-line
Experimente a seguinte ferramenta de marca d’água on-line desenvolvida usando o Aspose.Slides.
Conclusão
Neste artigo, você aprendeu como adicionar uma marca d’água aos slides do PowerPoint usando Java. O guia passo a passo e os exemplos de código demonstraram como adicionar marcas d’água de texto e imagem a apresentações do PowerPoint. Além disso, você pode consultar a documentação para explorar outros recursos da API. Além disso, sinta-se à vontade para nos informar sobre suas dúvidas por meio do nosso fórum.