svg เป็น png

แปลง SVG เป็น PNG ใน Java

SVG รูปภาพมีความโดดเด่นเนื่องจากปรับขนาดได้และคงคุณภาพเดิมไว้ โดยไม่คำนึงถึงขนาดหรือความละเอียดของหน้าจอ สามารถออกแบบได้ที่ความละเอียดเท่าใดก็ได้ และสามารถปรับขนาดขึ้น/ลงได้โดยไม่ทำลายคุณภาพ (หรือเป็นพิกเซล) แต่เนื่องจากภาพ SVG อิงตามจุดและเส้นทาง ดังนั้นแทนที่จะใช้พิกเซล จึงไม่สามารถแสดงรายละเอียดได้มากเท่าภาพแรสเตอร์ ดังนั้น หากเราแปลงภาพ SVG เป็น PNG ปัญหาเหล่านี้สามารถแก้ไขได้

API การแปลง SVG เป็น PNG

ในบทความนี้ เราจะใช้ Aspose.Imaging Cloud SDK สำหรับ Java ซึ่งเป็น API ที่ใช้ REST ซึ่งนำเสนอความสามารถในการแก้ไข จัดการ และแปลงแรสเตอร์ เมตาไฟล์ photoshop เป็น [รูปแบบที่สนับสนุน] ทางโปรแกรม]6 . นอกจากนี้ยังรองรับคุณสมบัติการแปลง SVG เป็น PNG ออนไลน์ ตอนนี้ เพื่อเริ่มต้นใช้งาน SDK เราจำเป็นต้องเพิ่มการอ้างอิงในโครงการ Java ของเราโดยรวมข้อมูลต่อไปนี้ใน pom.xml (โครงการประเภทการสร้าง maven)

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-imaging-cloud</artifactId>
        <version>22.4</version>
    </dependency>
</dependencies>

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

แปลง SVG เป็น PNG ใน Java

API การประมวลผลรูปภาพของเราสามารถแปลง PNG เป็น SVG และ SVG เป็น PNG ด้วยบรรทัดรหัสขั้นต่ำ ดังนั้นในส่วนนี้ เราจะพูดถึงรายละเอียดทั้งหมดในการแปลง SVG เป็น PNG โดยใช้ Java

  • ก่อนอื่น สร้างวัตถุของคลาส ImagingApi ที่เราส่งข้อมูลรับรองลูกค้าเป็นอาร์กิวเมนต์
  • ประการที่สอง อ่านเนื้อหาของภาพ SVG โดยใช้เมธอด readAllBytes(…) และส่งคืนไปยังอาร์เรย์ byte[]
  • จากนั้นสร้างอินสแตนซ์ของ UploadFileRequest ขณะที่ส่งชื่อ SVG และอัปโหลดไปยังที่เก็บข้อมูลบนคลาวด์โดยใช้เมธอด uploadFile(…)
  • ตอนนี้สร้างวัตถุของ ConvertImageRequest ซึ่งเราส่งชื่อ SNG อินพุตและรูปแบบผลลัพธ์เป็น “PNG”
  • เรียกใช้เมธอด converterImage(…) เพื่อเริ่มต้นการแปลง SVG เป็น PNG เอาต์พุตจะถูกส่งกลับเป็นสตรีมตอบกลับ
  • สุดท้าย บันทึก PNG ผลลัพธ์ไปยังไดรฟ์ในเครื่องโดยใช้วัตถุ FileOutputStream
// รับ ClientID และ ClientSecret จาก https://dashboard.aspose.cloud/
String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

// สร้างวัตถุภาพ
ImagingApi imageApi = new ImagingApi(clientSecret, clientId);

// โหลดภาพ SVG จากระบบโลคัล
File file1 = new File("File_Extension Icons.svg");
byte[] imageStream = Files.readAllBytes(file1.toPath());
			
// สร้างวัตถุคำขออัปโหลดไฟล์
UploadFileRequest uploadRequest = new UploadFileRequest("input.svg",imageStream,null);
// อัปโหลดภาพ SVG ไปยังที่เก็บข้อมูลบนคลาวด์
imageApi.uploadFile(uploadRequest);

// ระบุรูปแบบผลลัพธ์ของภาพ
String format = "PNG";

// สร้างออบเจกต์คำขอแปลงรูปภาพ
ConvertImageRequest convertImage = new ConvertImageRequest("input.svg", format, null, null);
// แปลง SVG เป็น PNG และส่งคืนรูปภาพในสตรีมตอบกลับ
byte[] resultantImage = imageApi.convertImage(convertImage);

// บันทึกภาพ PNG ไปยังที่จัดเก็บในตัวเครื่อง
FileOutputStream fos = new FileOutputStream("/Users/nayyer/Documents/" + "Converted.png");
fos.write(resultantImage);
fos.close();

รูปภาพ SVG อินพุตที่ใช้ในตัวอย่างด้านบนสามารถดาวน์โหลดได้จาก FileExtension Icons.svg

svg เป็น png

รูปภาพ:- แปลง svg เป็น png ดูตัวอย่างออนไลน์

บันทึก SVG เป็น PNG โดยใช้คำสั่ง cURL

เนื่องจาก Aspose.Imaging Cloud ได้รับการพัฒนาตามสถาปัตยกรรม REST ดังนั้นจึงสามารถเข้าถึงได้ง่ายผ่านคำสั่ง cURL ดังนั้นในส่วนนี้ เราจะบันทึก SVG เป็น PNG โดยใช้คำสั่ง 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 แล้ว โปรดดำเนินการคำสั่งต่อไปนี้เพื่อบันทึก SVG เป็นภาพ PNG

curl -v -X GET "https://api.aspose.cloud/v3.0/imaging/input.svg/convert?format=PNG" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-o Resultant.png

บทสรุป

ในตอนท้ายของบทความนี้ เราได้เรียนรู้รายละเอียดเกี่ยวกับวิธีแปลง SVG เป็น PNG โดยใช้ Java ในขณะเดียวกัน เรายังได้สำรวจตัวเลือกในการแปลง SVG เป็น PNG โดยใช้คำสั่ง cURL นอกจากนี้ หากคุณต้องการรับซอร์สโค้ด SDK และแก้ไขตามความต้องการของคุณ สามารถดาวน์โหลดได้จาก GitHub (Cloud SDK ของเราได้รับการพัฒนาภายใต้ใบอนุญาต MIT) โปรดทราบว่าตัวเลือกอื่นสำหรับการทดสอบคุณสมบัติที่น่าทึ่งของ API คือผ่าน SwaggerUI ภายในเว็บเบราว์เซอร์

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

บทความที่เกี่ยวข้อง

เราขอแนะนำให้ไปที่ลิงก์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: