เพิ่มลายน้ำใน PowerPoint Java

ลายน้ำมักใช้เพื่อระบุความเป็นเจ้าของหรือเพื่อป้องกันการใช้งานเอกสารโดยไม่ได้รับอนุญาต ในทางกลับกัน ยังใช้เพื่อแสดงสถานะของเอกสาร เช่น ต้นฉบับ ฉบับร่าง เป็นต้น ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่มลายน้ำข้อความหรือรูปภาพลงในสไลด์ PowerPoint โดยใช้โปรแกรมโดยใช้ Java

Java API เพื่อเพิ่มลายน้ำให้กับสไลด์ PowerPoint

สำหรับการเพิ่มลายน้ำให้กับสไลด์ PowerPoint เราจะใช้ Aspose.Slides for Java เป็น API การจัดการงานนำเสนอที่ให้คุณสร้างและจัดการเอกสารการนำเสนอจากภายในแอปพลิเคชัน Java คุณสามารถ ดาวน์โหลด API หรือติดตั้งโดยใช้การกำหนดค่า 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>

เพิ่มลายน้ำข้อความลงในสไลด์ PowerPoint ใน Java

ต่อไปนี้เป็นขั้นตอนในการเพิ่มลายน้ำข้อความในสไลด์ PowerPoint โดยใช้ Java

  • ขั้นแรก ให้โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
  • รับข้อมูลอ้างอิงของต้นแบบสไลด์ในวัตถุ IMasterSlide
  • คำนวณตำแหน่งของลายน้ำตามขนาดของงานนำเสนอ
  • เพิ่มรูปร่างอัตโนมัติใหม่ไปยังคอลเลกชันรูปร่างของสไลด์และรับข้อมูลอ้างอิงในวัตถุ IAutoShape
  • เพิ่มกรอบข้อความให้กับรูปร่างและตั้งค่าข้อความโดยใช้เมธอด IAutoShape.addTextFrame(string)
  • กำหนดขนาดตัวอักษร สี และมุมการหมุนของลายน้ำ
  • ล็อคลายน้ำเพื่อหลีกเลี่ยงการลบหรือแก้ไข
  • สุดท้าย บันทึกไฟล์ PowerPoint ที่อัปเดตโดยใช้เมธอด Presentation.save(string, SaveFormat)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มลายน้ำข้อความลงในสไลด์ PowerPoint

// เปิดงานนำเสนอ
Presentation pres = new Presentation("presentation.pptx");

try {
	// เข้าถึงต้นแบบ
	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;

	// เพิ่มรูปร่าง
	IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);

	// กำหนดประเภทการเติม
	watermarkShape.getFillFormat().setFillType(FillType.NoFill);
	watermarkShape.getLineFormat().getFillFormat().setFillType(FillType.NoFill);

	// กำหนดมุมการหมุน
	watermarkShape.setRotation(-45);

	// ตั้งค่าข้อความ
	ITextFrame watermarkTextFrame = watermarkShape.addTextFrame("Watermark");

	// ตั้งค่าแบบอักษรและสี
	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));

	// ล็อครูปร่างไม่ให้แก้ไข
	watermarkShape.getAutoShapeLock().setSelectLocked(true);
	watermarkShape.getAutoShapeLock().setSizeLocked(true);
	watermarkShape.getAutoShapeLock().setTextLocked(true);
	watermarkShape.getAutoShapeLock().setPositionLocked(true);
	watermarkShape.getAutoShapeLock().setGroupingLocked(true);

	// บันทึกงานนำเสนอ
	pres.save("watermarked-presentation.pptx", SaveFormat.Pptx);

} finally {
	if (pres != null)
		pres.dispose();
}

เอาต์พุต

ต่อไปนี้เป็นภาพหน้าจอของสไลด์ PowerPoint หลังจากใส่ลายน้ำแล้ว

เพิ่มลายน้ำข้อความใน PPT Java

เพิ่มลายน้ำรูปภาพให้กับสไลด์ PPT ใน Java

ต่อไปนี้เป็นขั้นตอนในการเพิ่มลายน้ำรูปภาพให้กับสไลด์ PPT ใน Java

  • ขั้นแรก ให้โหลดงานนำเสนอ PowerPoint โดยใช้คลาส Presentation
  • รับข้อมูลอ้างอิงของต้นแบบสไลด์ในวัตถุ IMasterSlide
  • คำนวณตำแหน่งของลายน้ำตามขนาดของงานนำเสนอ
  • เพิ่มรูปร่างอัตโนมัติใหม่ไปยังคอลเลกชันรูปร่างของสไลด์และรับข้อมูลอ้างอิงในวัตถุ IAutoShape
  • เพิ่มรูปภาพในงานนำเสนอและรับข้อมูลอ้างอิงในวัตถุ IPPImage
  • ตั้งค่าประเภทการเติมของ IAutoShape เป็น FillType.Picture
  • ตั้งค่าภาพลายน้ำโดยใช้เมธอด IAutoShape.getFillFormat().getPictureFillFormat().getPicture().setImage(IPPImage)
  • ล็อคลายน้ำเพื่อหลีกเลี่ยงการลบหรือแก้ไข
  • สุดท้าย บันทึกไฟล์ PowerPoint ที่อัปเดตโดยใช้เมธอด Presentation.save(string, SaveFormat)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเพิ่มลายน้ำรูปภาพลงในสไลด์ PowerPoint

// เปิดงานนำเสนอ
Presentation pres = new Presentation("presentation.pptx");

try {
	// เข้าถึงต้นแบบสไลด์
	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;

	// เพิ่มรูปร่าง
	IAutoShape watermarkShape = master.getShapes().addAutoShape(ShapeType.Rectangle, x, y, width, height);

	IPPImage image = pres.getImages().addImage(Files.readAllBytes(Paths.get("watermark.png")));

	// กำหนดประเภทการเติม
	watermarkShape.getFillFormat().setFillType(FillType.Picture);
	watermarkShape.getFillFormat().getPictureFillFormat().getPicture().setImage(image);
	watermarkShape.getFillFormat().getPictureFillFormat().setPictureFillMode(PictureFillMode.Stretch);
	watermarkShape.getLineFormat().getFillFormat().setFillType(FillType.NoFill);

	// ล็อครูปร่างไม่ให้แก้ไข
	watermarkShape.getAutoShapeLock().setSelectLocked(true);
	watermarkShape.getAutoShapeLock().setSizeLocked(true);
	watermarkShape.getAutoShapeLock().setTextLocked(true);
	watermarkShape.getAutoShapeLock().setPositionLocked(true);
	watermarkShape.getAutoShapeLock().setGroupingLocked(true);

	// บันทึกงานนำเสนอ
	pres.save("watermarked-presentation-image.pptx", SaveFormat.Pptx);

} finally {
	if (pres != null)
		pres.dispose();
}

ต่อไปนี้คือภาพหน้าจอของงานนำเสนอหลังจากเพิ่มลายน้ำรูปภาพ

เพิ่มลายน้ำรูปภาพใน PPT Java

Java Watermarking API สำหรับ PowerPoint - รับใบอนุญาตฟรี

คุณสามารถใช้ Aspose.Slides for Java ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราว

ลองออนไลน์

ลองใช้เครื่องมือลายน้ำออนไลน์ต่อไปนี้ซึ่งพัฒนาโดยใช้ Aspose.Slides

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีเพิ่มลายน้ำให้กับสไลด์ PowerPoint โดยใช้ Java คำแนะนำทีละขั้นตอนและตัวอย่างโค้ดได้สาธิตวิธีเพิ่มลายน้ำข้อความและรูปภาพในงานนำเสนอ PowerPoint นอกจากนี้ คุณสามารถดู เอกสารประกอบ เพื่อสำรวจคุณสมบัติอื่นๆ ของ API นอกจากนี้ คุณสามารถแจ้งให้เราทราบเกี่ยวกับข้อสงสัยของคุณผ่านทาง ฟอรัม ของเรา

ดูสิ่งนี้ด้วย