ปรับขนาดภาพโดยใช้ Java image resizer

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

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

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

<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

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

การปรับขนาดรูปภาพอย่างง่ายในภาษาจาวา

ในวิธีการปรับขนาดนี้ คุณต้องระบุขนาดของรูปภาพที่เป็นผลลัพธ์เท่านั้น ต่อไปนี้เป็นขั้นตอนในการปรับขนาดรูปภาพใน Java

  • ขั้นแรก ใช้คลาส Image เพื่อโหลดรูปภาพที่คุณต้องการปรับขนาด
  • จากนั้น เรียกใช้เมธอด Image.resize(int, int) เพื่อปรับขนาดรูปภาพ
  • สุดท้าย บันทึกภาพผลลัพธ์โดยใช้เมธอด Image.save(string)

ข้อมูลโค้ดต่อไปนี้จะปรับขนาดรูปภาพเป็นความสูงและความกว้างที่ระบุ

// โหลดภาพ
Image image = Image.load("aspose-logo.jpg");

// กำหนดมิติใหม่
image.resize(300, 300);

// บันทึกภาพ
image.save("SimpleResizing_out.jpg");

Java ปรับขนาดรูปภาพด้วยประเภทเฉพาะ

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

  • ขั้นแรก ใช้คลาส Image เพื่อโหลดรูปภาพที่คุณต้องการปรับขนาด
  • จากนั้น เรียกใช้เมธอด Image.resize(int, int, ResizeType) เพื่อปรับขนาดรูปภาพโดยใช้เทคนิคเฉพาะ
  • สุดท้าย บันทึกภาพผลลัพธ์โดยใช้เมธอด Image.save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการปรับขนาดรูปภาพโดยใช้เทคนิคการปรับขนาดเฉพาะ

// โหลดภาพ
Image image = Image.load("aspose-logo.jpg");

// กำหนดขนาดใหม่และประเภทการปรับขนาด
image.resize(300, 300, ResizeType.LanczosResample);

// บันทึกภาพ
image.save("SimpleResizing_out.jpg");

การปรับขนาดรูปภาพตามสัดส่วนใน Java

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

  • ขั้นแรก ใช้คลาส Image เพื่อโหลดรูปภาพที่คุณต้องการปรับขนาด
  • แคชข้อมูลรูปภาพโดยใช้เมธอด Image.cacheData()
  • กำหนดความสูงและความกว้างของรูปภาพผลลัพธ์
  • เรียกใช้เมธอด Image.resizeWidthProportionally(int) และ Image.resizeHeightProportional(int) เพื่อคำนวณค่าสัดส่วน
  • สุดท้าย บันทึกภาพผลลัพธ์โดยใช้เมธอด Image.save(string)

คุณยังสามารถระบุประเภทการปรับขนาดเฉพาะในขณะที่ปรับขนาดภาพตามสัดส่วนโดยใช้เมธอด Image.resizeWidthProportionally(int, ResizeType) และ Image.resizeHeightProportionally(int, ResizeType) ที่โอเวอร์โหลด

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

// โหลดภาพ
Image image = Image.load("aspose-logo.jpg");

// กำหนดมิติใหม่
int newWidth = image.getWidth() / 2;
image.resizeWidthProportionally(newWidth);
int newHeight = image.getHeight() / 2;
image.resizeHeightProportionally(newHeight);

// บันทึกภาพ
image.save("SimpleResizing_out.jpg");

การปรับขนาดภาพเวกเตอร์ใน Java

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

// โหลดภาพเวกเตอร์
try (Image image = Image.load("image.svg"))
{
  	// กำหนดมิติใหม่
	image.resize(image.getWidth() * 10,image.getHeight() * 15);
  
  	// บันทึกภาพเป็น PNG
	image.save("Logotype_10_15.png", new PngOptions());
}

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

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

บทสรุป

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

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