ลายน้ำมักใช้เพื่อระบุความเป็นเจ้าของหรือเพื่อป้องกันการใช้งานเอกสารโดยไม่ได้รับอนุญาต ในทางกลับกัน ยังใช้เพื่อแสดงสถานะของเอกสาร เช่น ต้นฉบับ ฉบับร่าง เป็นต้น ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่มลายน้ำข้อความหรือรูปภาพลงในสไลด์ PowerPoint โดยใช้โปรแกรมโดยใช้ Java
- Java API เพื่อเพิ่มลายน้ำให้กับสไลด์ PowerPoint
- เพิ่มลายน้ำข้อความลงในสไลด์ PowerPoint
- เพิ่มลายน้ำรูปภาพลงในสไลด์ PowerPoint
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
- ขั้นแรก ให้โหลดงานนำเสนอ 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();
}
ต่อไปนี้คือภาพหน้าจอของงานนำเสนอหลังจากเพิ่มลายน้ำรูปภาพ
Java Watermarking API สำหรับ PowerPoint - รับใบอนุญาตฟรี
คุณสามารถใช้ Aspose.Slides for Java ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราว
ลองออนไลน์
ลองใช้เครื่องมือลายน้ำออนไลน์ต่อไปนี้ซึ่งพัฒนาโดยใช้ Aspose.Slides
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีเพิ่มลายน้ำให้กับสไลด์ PowerPoint โดยใช้ Java คำแนะนำทีละขั้นตอนและตัวอย่างโค้ดได้สาธิตวิธีเพิ่มลายน้ำข้อความและรูปภาพในงานนำเสนอ PowerPoint นอกจากนี้ คุณสามารถดู เอกสารประกอบ เพื่อสำรวจคุณสมบัติอื่นๆ ของ API นอกจากนี้ คุณสามารถแจ้งให้เราทราบเกี่ยวกับข้อสงสัยของคุณผ่านทาง ฟอรัม ของเรา