โปรแกรมแก้ไขรูปภาพ มีคุณลักษณะการปรับขนาดที่ให้คุณปรับขนาดรูปภาพตามความต้องการของคุณ ในขณะที่ออกแบบโปรแกรมแก้ไขรูปภาพหรือประมวลผลรูปภาพจากภายในแอปพลิเคชัน 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 ในกรณีที่มีคำถาม คุณสามารถติดต่อเราได้ที่ ฟอรัม