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

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

Java API เพื่อเพิ่มลายน้ำในรูปภาพ - ดาวน์โหลดฟรี

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

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>20.12</version>
    <classifier>jdk16</classifier>
</dependency>

ขั้นตอนในการเพิ่มลายน้ำในรูปภาพใน Java

Aspose.Imaging for Java ทำให้การใส่ลายน้ำของรูปภาพเป็นเรื่องง่าย โดยสามารถทำได้ภายในโค้ดไม่กี่บรรทัด ต่อไปนี้เป็นขั้นตอนที่จำเป็นในการเพิ่มลายน้ำในรูปภาพใน Java

  • โหลดไฟล์รูปภาพจากดิสก์
  • สร้างลายน้ำและตั้งค่าคุณสมบัติ
  • ใส่ลายน้ำให้กับรูปภาพ
  • บันทึกภาพไปยังตำแหน่งที่ต้องการ

ตอนนี้เรามาเขียนโค้ดเพื่อใส่ลายน้ำรูปภาพใน Java

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

ต่อไปนี้เป็นขั้นตอนในการใส่ลายน้ำให้กับรูปภาพโดยใช้ Aspose.Imaging

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

// โหลดภาพ
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("image.png");

// สร้างและเริ่มต้นอินสแตนซ์ของคลาสกราฟิก
Graphics graphics= new Graphics(image);

// สร้างอินสแตนซ์ของ Font
Font font = new Font("Times New Roman", 16, FontStyle.Bold);

// สร้างอินสแตนซ์ของ SolidBrush และตั้งค่าคุณสมบัติ
SolidBrush brush = new SolidBrush();
brush.setColor(Color.getBlack());
brush.setOpacity(100);

// วาดสตริงโดยใช้วัตถุ SolidBrush และแบบอักษร ณ จุดที่กำหนด
graphics.drawString("Watermark by Aspose.Imaging for Java", font, brush, new PointF(image.getWidth()-100, image.getHeight()-100));

// บันทึกภาพ
image.save("watermarked-image.png");

การใส่ลายน้ำในแนวทแยงของรูปภาพใน Java

ในบางกรณี ลายน้ำจะถูกนำไปใช้กับรูปภาพในแนวทแยงมุม สำหรับกรณีดังกล่าว Aspose.Imaging for Java มีตัวเลือกการแปลงลายน้ำซึ่งคุณสามารถหมุนลายน้ำได้ ต่อไปนี้เป็นขั้นตอนในการเพิ่มลายน้ำในแนวทแยงให้กับรูปภาพ

  • โหลดไฟล์รูปภาพโดยใช้คลาส Image
  • สร้างวัตถุของคลาส กราฟิก และเริ่มต้นด้วยวัตถุรูปภาพ
  • สร้างและเริ่มต้นวัตถุ Font และ SolidBrush
  • รับขนาดภาพในวัตถุ ขนาด
  • สร้างวัตถุ Matrix ใหม่และตั้งค่าการแปลและการแปลงเป็นมุมที่ต้องการ
  • ใช้เมธอด Graphics.setTransform(Matrix) เพื่อตั้งค่าการแปลงลายน้ำ
  • เพิ่มลายน้ำโดยใช้เมธอด Graphics.drawString(String s, Font font, Brush brush, float x, float y)
  • บันทึกภาพโดยใช้เมธอด Image.save()

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

// โหลดภาพ
com.aspose.imaging.Image image = com.aspose.imaging.Image.load("image.png");

// สร้างและเริ่มต้นอินสแตนซ์ของคลาสกราฟิก
Graphics graphics= new Graphics(image);

// สร้างอินสแตนซ์ของ Font
Font font = new Font("Times New Roman", 16, FontStyle.Bold);

// สร้างอินสแตนซ์ของ SolidBrush และตั้งค่าคุณสมบัติ
SolidBrush brush = new SolidBrush();
brush.setColor(Color.getBlack());
brush.setOpacity(100);

Size sz = graphics.getImage().getSize();
 // สร้างวัตถุของคลาสเมทริกซ์สำหรับการแปลง
Matrix matrix = new Matrix();

// ขั้นแรกให้แปลแล้วหมุน                
matrix.translate(sz.getWidth() / 2, sz.getHeight() / 2);             
matrix.rotate(-45.0f);

// ตั้งค่าการแปลงผ่านเมทริกซ์
graphics.setTransform(matrix);

// วาดสตริงโดยใช้วัตถุ SolidBrush และ Font ที่จุดเฉพาะ
graphics.drawString("Watermark by Aspose.Imaging for Java", font, brush, 0, 0);

// บันทึกภาพ
image.save("watermarked-image.png");

สุดยอด Java API สำหรับภาพลายน้ำ - รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

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

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