ในคำแนะนำนี้ เราจะแสดงวิธีใช้ Java เพื่อแปลงรูปแบบภาพ JPG, PNG, JPEG และ GIF เป็น WebP กระบวนการนี้ง่ายและตรงไปตรงมา และสามารถรวมเข้ากับแอปพลิเคชัน Java ที่คุณมีอยู่ได้อย่างง่ายดาย ไม่ว่าคุณจะต้องการแปลงภาพเดียวหรือประมวลผลหลายภาพเป็นชุด คำแนะนำของเราทำให้การแปลง JPG เป็น WebP, PNG เป็น WebP, JPEG เป็น WebP และ GIF เป็น WebP เป็นเรื่องง่าย
เราทราบดีว่าภาพ JPEG สามารถบีบอัดได้สูง พกพาสะดวก และเข้ากันได้กับอุปกรณ์เกือบทั้งหมด นอกจากนี้ ภาพ JPEG ความละเอียดสูงยังสดใสและมีสีสันอีกด้วย ในทำนองเดียวกัน การบีบอัดใน PNG นั้นไม่มีการสูญเสียและเหมาะสำหรับภาพที่มีรายละเอียดและคอนทราสต์สูง อย่างไรก็ตาม รูปแบบ WebP ได้รับการพัฒนาโดย Google และเป็นรูปแบบภาพสมัยใหม่ที่ได้รับความนิยม ซึ่งให้การบีบอัดภาพบนเว็บแบบไม่สูญเสียและสูญเสียที่เหนือกว่า โดยทั่วไปมีขนาดเล็กกว่ามาก (25%-34%) กว่า JPG, PNG และอื่น ๆ ดังนั้นเว็บไซต์จึงโหลดเร็วขึ้น ตอนนี้เรามาดูรายละเอียดเกี่ยวกับวิธีแปลง JPG เป็น WebP ใน Java
- JPG เป็น WebP REST API
- แปลง JPG เป็น WebP ใน Java
- PNG เป็น WebP ใน Java
- GIF เป็น WebP โดยใช้คำสั่ง cURL
JPG เป็น WebP REST API
Aspose.Imaging Cloud SDK สำหรับ Java เป็นหนึ่งในโซลูชันที่ดีที่สุดของเราที่นำเสนอความสามารถในการประมวลผลภาพและการแปลงภาพที่เชื่อถือได้ ให้ความสามารถในการประมวลผลภาพ (แก้ไขและแปลง) ในแอปพลิเคชัน Java ของคุณโดยใช้บรรทัดโค้ดอย่างง่าย API สามารถประมวลผลภาพแรสเตอร์, ไฟล์ Photoshop, Metafiles และรูปแบบ WebP ตามขอบเขตของบทความนี้ เราจะใช้มันเพื่อแปลง jpg เป็น webp ในแอปพลิเคชัน Java ขั้นตอนแรกคือการเพิ่มการอ้างอิง API ในโครงการจาวาของเราโดยใส่ข้อมูลต่อไปนี้ใน pom.xml (โครงการประเภทการสร้าง maven)
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>https://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging-cloud</artifactId>
<version>22.4</version>
</dependency>
</dependencies>
เมื่อเพิ่มการอ้างอิง REST API ในโครงการ Java แล้ว โปรดรับข้อมูลประจำตัวไคลเอนต์ของคุณจาก Cloud Dashboard มิฉะนั้น คุณต้องลงทะเบียนบัญชีฟรีก่อนในขณะที่ใช้ที่อยู่อีเมลที่ถูกต้อง
แปลง JPG เป็น WebP ใน Java
ในส่วนนี้ เราจะพูดถึงรายละเอียดทั้งหมดที่เกี่ยวข้องกับการแปลง JPG เป็น WebP โดยใช้ข้อมูลโค้ด Java
- ประการแรก สร้างวัตถุของ ImagingApi โดยใช้ข้อมูลส่วนตัว
- ประการที่สอง โหลดภาพ JPG โดยใช้วิธี readAllBytes(…) และส่งค่าที่ส่งคืนไปยังอาร์เรย์ byte[]
- ประการที่สาม สร้างอินสแตนซ์ของ UploadFileRequest โดยระบุรูปภาพ JPEG เป็นอาร์กิวเมนต์และอัปโหลดไปยังที่เก็บข้อมูลบนคลาวด์โดยใช้เมธอด uploadFile(…)
- ตอนนี้สร้างวัตถุ ConvertImageRequest ซึ่งใช้ชื่อภาพ JPEG และรูปแบบ ‘webp’ เป็นอาร์กิวเมนต์
- เรียกใช้เมธอด converterImage(…) เพื่อดำเนินการแปลง JPG เป็น WebP เอาต์พุตจะถูกส่งกลับเป็นสตรีมตอบกลับ
- สุดท้าย บันทึกผลลัพธ์ WebP ไปยังไดรฟ์ในเครื่องโดยใช้วัตถุ FileOutputStream
// รับ ClientID และ ClientSecret จาก https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// สร้างวัตถุภาพ
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// โหลดภาพ JPEG อินพุตจากไดรฟ์ในเครื่อง
File file1 = new File("butterfly-yellow.jpeg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// สร้างวัตถุคำขออัปโหลดไฟล์
UploadFileRequest uploadRequest = new UploadFileRequest("input.jpg",imageStream,null);
// อัปโหลดภาพ jpg ไปยังที่เก็บข้อมูลบนคลาวด์
imageApi.uploadFile(uploadRequest);
// ระบุรูปแบบเอาต์พุตเป็น WebP
String format = "webp";
// สร้างออบเจกต์คำขอแปลงรูปภาพ
ConvertImageRequest convertImage = new ConvertImageRequest("input.jpg", format, null, null);
// แปลง JPG เป็น WebP และส่งคืนเอาต์พุตในสตรีมตอบกลับ
byte[] resultantImage = imageApi.convertImage(convertImage);
// บันทึก WebP ผลลัพธ์ไปยังไดรฟ์ในเครื่อง
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "output.webp");
fos.write(resultantImage);
fos.close();
PNG เป็น WebP ใน Java
เรามาพูดถึงรายละเอียดเกี่ยวกับวิธีการแปลง PNG เป็น WebP โดยไม่ต้องใช้ที่เก็บข้อมูลบนคลาวด์ อิมเมจต้นฉบับถูกโหลดจากไดรฟ์ในเครื่อง และหลังจากการแปลง ไฟล์ผลลัพธ์จะถูกจัดเก็บไว้ในฮาร์ดไดรฟ์ในเครื่องด้วย
- ขั้นแรก สร้างวัตถุของ ImagingApi โดยใช้ข้อมูลส่วนตัว
- ประการที่สอง โหลดภาพ PNG โดยใช้วิธี readAllBytes(…) และส่งผ่านไปยังอาร์เรย์ byte[]
- ประการที่สาม สร้างวัตถุของ CreateConvertedImageRequest ซึ่งใช้ชื่อภาพ PNG และรูปแบบ webp เป็นอาร์กิวเมนต์
- ตอนนี้เรียกเมธอด createConvertedImage(…) เพื่อทำการแปลง PNG เป็น WebP เอาต์พุตจะถูกส่งกลับเป็นสตรีมตอบกลับ
- สุดท้าย บันทึกผลลัพธ์ WenP ไปยังไดรฟ์ในเครื่องโดยใช้วัตถุ FileOutputStream
// รับ ClientID และ ClientSecret จาก https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// สร้างวัตถุภาพ
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);
// โหลดภาพ PNG จากไดรฟ์ในเครื่อง
File file1 = new File("source.png");
byte[] imageStream = Files.readAllBytes(file1.toPath());
// ระบุรูปแบบเอาต์พุตเป็น WebP
String format = "webp";
// สร้างออบเจกต์คำขอแปลงรูปภาพ
CreateConvertedImageRequest convertRequest = new CreateConvertedImageRequest(imageStream,format,null,null);
// แปลง PNG เป็น WebP และส่งคืนเอาต์พุตในสตรีมตอบกลับ
byte[] resultantImage = imageApi.createConvertedImage(convertRequest);
// บันทึก WebP ผลลัพธ์ไปยังไดรฟ์ในเครื่อง
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "output.webp");
fos.write(resultantImage);
fos.close();
หมายเหตุ:- เพื่อบันทึก WebP ที่เป็นผลลัพธ์บนที่เก็บข้อมูลบนคลาวด์ ให้ส่งรายละเอียดเส้นทาง WebP ขณะสร้างวัตถุของ CreateConvertedImageRequest ด้วยวิธีนี้ ขั้นตอนสุดท้ายในการจัดเก็บสตรีมเอาต์พุตไปยังไดรฟ์ในเครื่องจะถูกข้ามไป
GIF เป็น WebP โดยใช้คำสั่ง cURL
นอกเหนือจากโค้ด Java แล้ว REST API ยังสามารถเข้าถึงได้ผ่านคำสั่ง cURL ดังนั้นในส่วนนี้ เราจะทำการแปลง GIF เป็น WebP โดยใช้คำสั่ง cURL ตอนนี้ข้อกำหนดเบื้องต้นคือการสร้างโทเค็นการเข้าถึง JWT (ตามข้อมูลรับรองลูกค้า) โดยใช้คำสั่งต่อไปนี้
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
เมื่อสร้าง JWT แล้ว โปรดดำเนินการคำสั่งต่อไปนี้เพื่อทำการแปลง GIF เป็น WebP และบันทึกผลลัพธ์ไปยังไดรฟ์ในเครื่อง
curl -X -v GET "https://api.aspose.cloud/v3.0/imaging/UpdateGIFSampleImage.gif/convert?format=webp" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT>" \
-o "output.webp"
บทสรุป
บทความนี้ได้ให้รายละเอียดที่จำเป็นทั้งหมดเกี่ยวกับการแปลง JPG เป็น WebP, PNG เป็น WebP และ GIF เป็น WebP โดยใช้ Java พร้อมกันนี้เรายังได้เรียนรู้ขั้นตอนการแปลง GIF เป็น WebP โดยใช้คำสั่ง cURL โปรดทราบว่าเราขอแนะนำให้คุณสำรวจ เอกสารประกอบผลิตภัณฑ์ ซึ่งเป็นแหล่งข้อมูลที่น่าทึ่ง มันจะให้ความกระจ่างแก่คุณเกี่ยวกับคุณสมบัติที่น่าตื่นเต้นอื่น ๆ ที่กำลังนำเสนอโดย REST API
นอกจากนี้ คุณอาจลองทดสอบคุณสมบัติ API ผ่าน SwaggerUI (ภายในเว็บเบราว์เซอร์) และในกรณีที่คุณจำเป็นต้องดาวน์โหลดและแก้ไขซอร์สโค้ด ก็สามารถเข้าถึงได้จาก GitHub (เผยแพร่แล้ว ภายใต้ใบอนุญาต MIT) สุดท้ายนี้ หากคุณพบปัญหาใดๆ ขณะใช้ API โปรดอย่าลังเลที่จะติดต่อเราเพื่อขอวิธีแก้ไขปัญหาอย่างรวดเร็วผ่าน ฟอรัมสนับสนุนผลิตภัณฑ์ ฟรี
บทความที่เกี่ยวข้อง
โปรดไปที่ลิงก์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: