การตัดภาพเป็นกระบวนการในการเลือกส่วนของภาพและแสดงเฉพาะพื้นที่นั้นเท่านั้น มันสามารถมีประโยชน์ในสถานการณ์ที่หลากหลาย เช่น การสร้างภาพขนาดย่อที่สะดุดตา การดึงดูดความสนใจไปยังส่วนเฉพาะของรูปภาพ ฯลฯ ในบทความนี้ เราจะเรียนรู้วิธีการนำการตัดรูปภาพไปใช้ใน Java นอกจากนี้เรายังจะสำรวจเทคนิคทีละขั้นตอนเพื่อแยกวัตถุและปรับปรุงการออกแบบของคุณ
บทความนี้ครอบคลุมหัวข้อต่อไปนี้:
Java Image Clipping API - ดาวน์โหลดฟรี
สำหรับการคลิปรูปภาพใน Java เราจะใช้ประโยชน์จาก Aspose. Drawing for Java API ที่แข็งแกร่ง ซึ่งเป็นโซลูชันล้ำสมัยสำหรับการจัดการรูปภาพที่มีประสิทธิภาพและแม่นยำ เป็นไลบรารีกราฟิก 2D อเนกประสงค์สำหรับการเขียนแบบเชิงโปรแกรมใน Java ช่วยให้นักพัฒนาสามารถโหลด บันทึก และแก้ไข รูปแบบไฟล์ที่รองรับ ได้หลากหลาย ทำให้เป็นตัวเลือกที่เหมาะสำหรับความต้องการตัดภาพ
โปรด ดาวน์โหลด JAR ของ API หรือเพิ่มการกำหนดค่า pom.xml ต่อไปนี้ในแอปพลิเคชัน Java ที่ใช้ Maven
<repositories>
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-drawing</artifactId>
<version>24.4</version>
</dependency>
</dependencies>
การตัดภาพใน Java
เราสามารถใช้การตัดรูปภาพโดยทางโปรแกรมใน Java โดยทำตามขั้นตอนด้านล่าง:
- สร้างอินสแตนซ์ของคลาสบิตแมป
- เริ่มต้นวัตถุคลาสกราฟิกโดยใช้เมธอด fromImage()
- กำหนดเส้นทางคลิปโดยใช้คลาส GraphicsPath
- หลังจากนั้น ให้ตั้งค่าเส้นทางคลิปโดยใช้เมธอด setClip()
- สุดท้าย ให้บันทึกภาพที่ส่งออกโดยใช้เมธอด save()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการใช้การตัดรูปภาพใน Java
// สร้างบิตแมปใหม่
Bitmap bitmap = new Bitmap(1000, 800);
// เริ่มต้นกราฟิก
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);
// กำหนดคลิป
RectangleF rectangle = new RectangleF(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);
// ระบุสตริง
StringFormat stringFormat = new StringFormat();
stringFormat.setAlignment(StringAlignment.Center);
stringFormat.setLineAlignment(StringAlignment.Center);
Brush brush = new SolidBrush(Color.getBlue());
Font arial = new Font("Arial", 20, FontStyle.Regular);
String text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
// วาดเส้น
graphics.drawString(text, arial, brush, rectangle, stringFormat);
// บันทึก
bitmap.save("Clipping.png");
แยกวัตถุออกจากรูปภาพใน Java
เราสามารถแยกส่วนเฉพาะของรูปภาพได้โดยทำตามขั้นตอนที่กล่าวไว้ข้างต้น อย่างไรก็ตาม เราเพียงแค่ต้องโหลดรูปภาพที่มีอยู่แล้ววาดโดยใช้เมธอด DrawImage()
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแยกวัตถุออกจากรูปภาพใน Java
// ตัวอย่างโค้ดนี้สาธิตวิธีการแยกวัตถุออกจากรูปภาพ
// สร้างบิตแมปใหม่
Bitmap bitmap = new Bitmap(1000, 800);
// เริ่มต้นกราฟิก
Graphics graphics = Graphics.fromImage(bitmap);
graphics.setTextRenderingHint(TextRenderingHint.AntiAliasGridFit);
// กำหนดคลิป
RectangleF rectangle = new RectangleF(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.addEllipse(rectangle);
graphics.setClip(clipPath);
// โหลดภาพ
Bitmap image = new Bitmap("aspose-logo.png");
// วาดภาพในตำแหน่งที่กำหนด
graphics.drawImage(image,0,0);
// บันทึก
bitmap.save("extract-object.png");
รับใบอนุญาตฟรี
คุณสามารถ [รับสิทธิ์ใช้งานชั่วคราวฟรี] เพื่อทดลองใช้ Aspose. Drawing สำหรับ Java โดยไม่มีข้อจำกัดในการประเมิน
Aspose. Drawing – ทรัพยากรฟรี
นอกจากการตัดภาพใน Java แล้ว คุณยังสามารถเรียนรู้เพิ่มเติมเกี่ยวกับคุณสมบัติต่างๆ ของไลบรารีได้โดยใช้แหล่งข้อมูลด้านล่าง:
บทสรุป
ในบทความนี้ เราได้สำรวจกระบวนการปรับใช้การตัดรูปภาพใน Java เมื่อทำตามขั้นตอนที่ระบุไว้ในบทความนี้ คุณสามารถแยกวัตถุออกจากรูปภาพได้อย่างแม่นยำและง่ายดาย ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราที่ ฟอรัมการสนับสนุนฟรี