หมุนภาพใน Java

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

Java API เพื่อหมุนรูปภาพ - ดาวน์โหลดฟรี

Aspose.Imaging for Java คือ API การประมวลผลรูปภาพที่ให้คุณจัดการรูปแบบรูปภาพได้หลากหลาย API ช่วยให้คุณจัดการกับรูปภาพได้ง่ายขึ้นโดยไม่ต้องเขียนโค้ดมากมาย เราจะใช้ API นี้เพื่อหมุนภาพ คุณสามารถ ดาวน์โหลด API หรือติดตั้งลงในแอปพลิเคชัน Java โดยใช้การกำหนดค่า 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-imaging-java</artifactId>
    <version>21.12</version>
    <classifier>jdk16</classifier>
</dependency>

ขั้นตอนในการหมุนรูปภาพใน Java

คุณสามารถหมุนภาพที่มุมใดมุมหนึ่งหรือมุมการหมุนมาตรฐาน เช่น 90, 180 และ 270 องศา Enum RotateFlipType ใช้เพื่อระบุมุมการหมุน (และ/หรือประเภทการพลิก) คุณสามารถดำเนินการหมุนภาพต่อไปนี้อย่างใดอย่างหนึ่ง:

  • หมุนภาพ
  • หมุนและพลิกภาพในเวลาเดียวกัน

ต่อไปนี้เป็นขั้นตอนในการหมุนรูปภาพ

  • โหลดภาพจากดิสก์
  • ระบุมุมการหมุนและหมุนภาพ
  • บันทึกภาพที่หมุน

มาดูวิธีการหมุนภาพด้วย Java กัน

หมุนรูปภาพใน Java

หากต้องการหมุนภาพ คุณสามารถเลือกค่า RotateFlipType enum ค่าใดค่าหนึ่งต่อไปนี้

  • Rotate180FlipNone: หมุนได้ 180 องศาโดยไม่ต้องพลิก
  • Rotate270FlipNone: หมุนได้ 270 องศาโดยไม่พลิกกลับ
  • Rotate90FlipNone: หมุน 90 องศาโดยไม่พลิก

มาดูวิธีการหมุนภาพ 270 องศาในภาษาจาวากัน

  • ขั้นแรก ใช้คลาส Image เพื่อโหลดรูปภาพ
  • จากนั้นใช้เมธอด Image.rotateFlip(RotateFlipType.Rotate270FlipNone) เพื่อหมุนภาพเป็น 270 องศา
  • สุดท้าย บันทึกภาพผลลัพธ์โดยใช้เมธอด Image.save(string)

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

// โหลดภาพ
RasterImage image = (RasterImage) Image.load("image.bmp");

// หมุนภาพ
image.rotateFlip(RotateFlipType.Rotate270FlipNone);

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

ต่อไปนี้คือภาพอินพุต (ซ้าย) และภาพผลลัพธ์ (ขวา) ที่เราได้รับหลังจากการหมุน

หมุนภาพใน java

หมุนรูปภาพ

การหมุนภาพ Java ในมุมเฉพาะ

คุณยังสามารถหมุนรูปภาพในมุมอื่นที่ไม่ใช่ 90, 180 และ 270 ได้ด้วย ด้วยเหตุนี้ API จึงจัดเตรียมเมธอด Image.rotate(float angle) ซึ่งยอมรับมุมการหมุนเป็นพารามิเตอร์ ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการหมุนภาพที่ 20 องศาใน Java

// โหลดภาพ
RasterImage image = (RasterImage) Image.load("image.bmp");

// ภาพแคชเพื่อประสิทธิภาพที่ดีขึ้น
if (!image.isCached()) {
  image.cacheData();
}

// หมุนที่ 20 องศาโดยรักษาขนาดภาพไว้
image.rotate(20f);

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

ต่อไปนี้คือเอาต์พุตของตัวอย่างโค้ดด้านบน

หมุนภาพที่มุมใดมุมหนึ่งในภาษาจาวา

หมุนและพลิกรูปภาพใน Java

ในส่วนก่อนหน้านี้ คุณได้เห็นวิธีการหมุนรูปภาพในมุมที่ต้องการแล้ว อย่างไรก็ตาม ในบางกรณี คุณต้องหมุนและพลิกภาพพร้อมกัน เพื่อให้บรรลุเป้าหมายนี้ จะใช้ค่า RotateFlipType ต่อไปนี้

  • Rotate180FlipX: การหมุน 180 องศาพร้อมการพลิกแนวนอน
  • Rotate180FlipXY: หมุนได้ 180 องศาพร้อมการพลิกแนวนอนและแนวตั้ง
  • Rotate180FlipY: การหมุน 180 องศาพร้อมการพลิกแนวตั้ง
  • Rotate270FlipX: การหมุน 270 องศาพร้อมการพลิกแนวนอน
  • Rotate270FlipXY: การหมุน 270 องศาพร้อมการพลิกแนวนอนและแนวตั้ง
  • Rotate270FlipY: การหมุน 270 องศาพร้อมการพลิกแนวตั้ง
  • Rotate90FlipX: การหมุน 90 องศาพร้อมการพลิกแนวนอน
  • Rotate90FlipXY: การหมุน 90 องศาพร้อมการพลิกแนวนอนและแนวตั้ง
  • Rotate90FlipY: การหมุน 90 องศาพร้อมการพลิกแนวตั้ง

ต่อไปนี้เป็นขั้นตอนในการหมุนและพลิกภาพพร้อมกันใน Java

  • ขั้นแรก ใช้คลาส Image เพื่อโหลดรูปภาพ
  • จากนั้น ใช้เมธอด Image.rotateFlip(RotateFlipType.Rotate180FlipX) เพื่อหมุนและพลิกภาพ
  • สุดท้าย บันทึกภาพผลลัพธ์โดยใช้เมธอด Image.save(string)

ข้อมูลโค้ดต่อไปนี้แสดงวิธีการหมุนและพลิกภาพพร้อมกัน

// โหลดภาพ
RasterImage image = (RasterImage) Image.load("image.bmp");

// หมุนและพลิกภาพ
image.rotateFlip(RotateFlipType.Rotate180FlipX);

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

ต่อไปนี้คือภาพผลลัพธ์ (ขวา) ที่เราได้รับหลังจากใช้การหมุนและการพลิก

หมุนและพลิกภาพใน Java

หมุนและพลิกภาพ

Java Image Rotation API - รับใบอนุญาตฟรี

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

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีการหมุนรูปภาพใน Java นอกจากนี้ คุณได้เห็นวิธีการหมุนและพลิกภาพในเวลาเดียวกัน นอกจากนี้ บทความยังครอบคลุมถึงวิธีการหมุนรูปภาพในมุมเฉพาะที่ไม่ใช่ 90, 180 และ 270 องศา

API การแก้ไขรูปภาพ Java

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

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