บทความนี้จะอธิบาย วิธีผสาน photos ใน Java โดยจะกล่าวถึงการเตรียมสภาพแวดล้อม ขั้นตอนแบบเป็นขั้นตอน และโค้ดตัวอย่างที่รันได้เพื่อสร้าง photo joiner ใน Java ข้อมูลนี้มีประโยชน์สำหรับการทำงานกับคุณสมบัตินี้ในสภาพแวดล้อม Java บนแพลตฟอร์มที่แตกต่างกัน
ขั้นตอนในการรวมรูปภาพใน Java
- เตรียมสภาพแวดล้อมเพื่อใช้ Aspose.Imaging for Java กับ Repository Manager
- สร้างรายการรูปภาพเพื่อคำนวณขนาดภาพที่ส่งออก
- รวมภาพต้นฉบับเป็นภาพเดียวและสร้างแหล่งที่มาของเอาต์พุต
- ระบุคุณสมบัติที่แตกต่างกันของคลาส JpegOptions
- แสดงผลภาพที่ผสานด้วยอินสแตนซ์คลาส JpegImage
ขั้นตอนข้างต้นอธิบายกระบวนการทั้งหมดเพื่อ รวมรูปภาพใน Java ในขั้นตอนแรก ให้แสดงรายการรูปภาพต่างๆ ที่จะรวมเป็นรูปภาพเดียว จากนั้นสร้างภาพถ่ายใหม่และส่งออกไปยังภาพที่ส่งออกก่อนที่จะเขียนลงดิสก์หรือสตรีมตามความต้องการของคุณ
รหัสเพื่อรวมรูปภาพใน Java
import com.aspose.imaging.*; | |
public class Main { | |
public static void main(String[] args) throws Exception // Merge photos in Java | |
{ | |
// Set the licenses | |
new License().setLicense("License.lic"); | |
// Creating an array of strings | |
String[] imagePaths = new String[3]; | |
// Initializing array elements | |
imagePaths[0] = "Sample1.jpg"; | |
imagePaths[1] = "Sample2.jpg"; | |
imagePaths[2] = "Sample3.jpg"; | |
// Path of output image | |
String outputPath = "output-combine.jpg"; | |
// Get resulting image size | |
int newWidth = 0; | |
int newHeight = 0; | |
for (String imagePath : imagePaths) { | |
try (com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(imagePath)) { | |
com.aspose.imaging.Size size = image.getSize(); | |
newWidth = Math.max(newWidth, size.getWidth()); | |
newHeight += size.getHeight(); | |
} | |
} | |
// Combine images into new one | |
try (com.aspose.imaging.imageoptions.JpegOptions options = new com.aspose.imaging.imageoptions.JpegOptions()) { | |
options.setSource(new com.aspose.imaging.sources.StreamSource()); // empty | |
options.setQuality(100); | |
// Create resultant image | |
try (com.aspose.imaging.fileformats.jpeg.JpegImage newImage = (com.aspose.imaging.fileformats.jpeg.JpegImage) com.aspose.imaging.Image.create(options, newWidth, newHeight)) { | |
int stitchedHeight = 0; | |
for (String imagePath : imagePaths) { | |
try (com.aspose.imaging.RasterImage image = (com.aspose.imaging.RasterImage) com.aspose.imaging.Image.load(imagePath)) { | |
com.aspose.imaging.Rectangle bounds = new com.aspose.imaging.Rectangle(0, stitchedHeight, image.getWidth(), image.getHeight()); | |
newImage.saveArgb32Pixels(bounds, image.loadArgb32Pixels(image.getBounds())); | |
stitchedHeight += image.getHeight(); | |
} | |
} | |
// Save resultant image | |
newImage.save(outputPath); | |
} | |
} | |
System.out.println("Done"); | |
} | |
} |
โค้ดตัวอย่างนี้สามารถใช้เพื่อพัฒนา image Combiner ใน Java มันใช้วิธีการที่แตกต่างกันของคลาส JpegImage เพื่อสร้างภาพที่ส่งออกและตรวจสอบขนาดของภาพ จากนั้นจะสร้างสี่เหลี่ยมและบันทึกภาพที่ส่งออกด้วยวิธีบันทึก อย่างไรก็ตาม คุณสามารถตั้งค่าลักษณะต่างๆ ของภาพที่ส่งออกได้โดยใช้วิธีการที่เปิดเผยโดยคลาส JpegOptions เช่น คุณภาพที่ปรับขนาด โปรไฟล์สี RGB โหมดการปัดเศษตัวอย่าง เป็นต้น ตามความต้องการของคุณ
ในบทความนี้ เราได้เรียนรู้เกี่ยวกับการดำเนินการ รวมรูปภาพใน Java หากคุณสนใจที่จะเรียนรู้เรื่องการครอบตัดรูปภาพ โปรดอ่านบทความเกี่ยวกับ วิธีการครอบตัดรูปภาพใน Java