Adicionar marca d'água ao PowerPoint Java

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

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 texto ao Java PPT

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.

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.

Adicionar marca d'água de imagem ao PPT Java

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.

Veja também