(PNG) (Portable Network Graphics) และ PDF(Portable Document Format) มีวัตถุประสงค์ที่แตกต่างกันในโลกดิจิทัล PNG ถูกใช้กันอย่างแพร่หลายสำหรับรูปภาพคุณภาพสูงเนื่องจากการบีบอัดแบบไม่สูญเสียข้อมูลและการรองรับความโปร่งใส ทำให้เหมาะสำหรับการออกแบบเว็บ การสร้างกราฟิก และเนื้อหาวิดีโอที่มีรายละเอียด ในทางกลับกัน PDF เป็นรูปแบบสากลสำหรับการแบ่งปันและเก็บถาวรเอกสาร ช่วยให้มั่นใจได้ถึงความสอดคล้องของเค้าโครงในทุกอุปกรณ์ การแปลง PNG เป็น PDF เป็นกระบวนการที่มีประโยชน์สำหรับการสร้างการรวบรวม การสร้างรายงานระดับมืออาชีพ
API การแปลงรูปภาพ
Aspose.Imaging Cloud คือ REST API เฉพาะของเราที่พัฒนาขึ้นเพื่ออำนวยความสะดวกแก่ลูกค้าที่กำลังมองหาความสามารถในการประมวลผลและปรับแต่งรูปภาพบน Cloud คุณสามารถดำเนินการต่างๆ เช่น การปรับขนาดรูปภาพ การครอบตัด การหมุน การปรับขนาด การพลิก การค้นหา การส่งออกไปยัง [รูปแบบไฟล์ที่รองรับ] อื่นๆ 4 ตอนนี้ ตามบทความนี้ เราจะใช้ Aspose.Imaging Cloud SDK สำหรับ .NET ซึ่งเป็นตัวห่อหุ้ม Aspose.Imaging Cloud
การติดตั้ง
สามารถดาวน์โหลด .NET Cloud SDK ได้ผ่าน NuGet และ GitHub โปรดดำเนินการคำสั่งต่อไปนี้ในเทอร์มินัลเพื่อติดตั้ง SDK ผ่าน NuGet:
nuget install Aspose.Imaging-Cloud
ในกรณีที่คุณต้องการติดตั้งจาก NuGet Package Manager โปรดดำเนินการคำสั่งต่อไปนี้
PM> Install-Package Aspose.Imaging-Cloud
ติดตั้งใน Visual Studio
อีกวิธีหนึ่งคือการติดตั้งโดยตรงภายใน Visual Studio:
- เปิด Solution Explorer
- ขยายโครงการและคลิกขวาที่โฟลเดอร์แพ็คเกจภายในโซลูชันของคุณ
- เลือกตัวเลือกจัดการแพ็คเกจ NuGet…
- คลิกที่แท็บ Browse และค้นหา “Aspose.Imaging-Cloud”
- คลิกช่องกาเครื่องหมายข้างๆ แพ็คเกจ Aspose.Imaging-Cloud เลือกเวอร์ชันที่เหมาะสมในแท็บด้านขวา และคลิกปุ่ม เพิ่มแพ็คเกจ
การสมัครรับข้อมูลระบบคลาวด์
ขั้นตอนต่อไปคือการสร้างบัญชีสมัครสมาชิกฟรีโดยไปที่ Aspose.Cloud Dashboard หากคุณมีบัญชี GitHub หรือ Google เพียงลงทะเบียน มิฉะนั้น ให้คลิกที่ปุ่ม สร้างบัญชีใหม่ และระบุข้อมูลที่จำเป็น
แปลง PNG เป็น PDF
เพื่อแปลงภาพ PNG เป็นรูปแบบ PDF เราอาจใช้ API ใด API หนึ่งต่อไปนี้เพื่อตอบสนองความต้องการนี้:
API GET คาดหวังให้คุณอัปโหลดรูปภาพไปยัง Cloud Storage ก่อน จากนั้นจึงดำเนินการแปลง ในขณะที่ API ตัวที่สองต้องการให้คุณส่งรูปภาพโดยตรงในเนื้อหาคำขอ และผลลัพธ์สุดท้ายจะถูกจัดเก็บไว้บน Cloud Storage
โหลด PNG จากที่เก็บข้อมูลบนคลาวด์
ขั้นตอนต่อไปนี้จะกำหนดว่าเราสามารถอัปโหลดรูปภาพไปยังระบบจัดเก็บข้อมูลบนคลาวด์ก่อนได้อย่างไร จากนั้นจึงดำเนินการแปลง หากเราข้ามขั้นตอนการอัปโหลดรูปภาพ เราก็สามารถแปลงรูปภาพที่มีอยู่แล้วในระบบจัดเก็บข้อมูลบนคลาวด์เป็นรูปแบบ PDF โดยใช้โค้ดเดียวกันได้
- ประการแรก เราต้องสร้างอ็อบเจ็กต์ ImagingApi ในขณะที่ส่งรายละเอียด Client ID และ Client Secret เป็นอาร์กิวเมนต์
- ประการที่สอง โหลดรูปภาพ PNG จากไดรฟ์ภายในเครื่องและส่งเป็นอาร์กิวเมนต์ไปยังอ็อบเจ็กต์ UploadFileRequest
- ประการที่สาม เรียกใช้เมธอด UploadFile(…) ของ ImagingApi เพื่ออัปโหลดไฟล์ไปยังที่จัดเก็บข้อมูลบนคลาวด์ (คุณอาจข้ามขั้นตอนนี้ได้ หากภาพนั้นมีอยู่ในที่จัดเก็บข้อมูลบนคลาวด์อยู่แล้ว)
- สร้างอินสแตนซ์ของคลาส ConvertImageRequest ซึ่งใช้ชื่อภาพและรูปแบบผลลัพธ์เป็นอาร์กิวเมนต์ ชื่อโฟลเดอร์และที่เก็บข้อมูลเป็นทางเลือก
- ตอนนี้เรียกวิธี ConvertImage(…) ของคลาส ImagingApi เพื่อเริ่มการแปลง
- ในที่สุด เนื่องจากการตอบสนองมีภาพสตรีม เราจึงสามารถบันทึก s ลงในไดรฟ์ภายในเครื่องได้โดยใช้ File.Create อ็อบเจ็กต์ (วิธีการแสดงอยู่ด้านล่าง)
// รับ ClientID จาก https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// เส้นทางของไฟล์ PNG อินพุต
string imageFile = "poodle.png";
// รูปแบบไฟล์เอาท์พุต
string format = "pdf";
// ชื่อของเอกสาร PDF ที่ได้ผลลัพธ์
string resultantFile = "resultant.pdf";
// โหลดไฟล์จากไดรฟ์ภายในเครื่อง
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// อัปโหลดเอกสารต้นฉบับไปยัง Cloud Storage
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// สร้างภาพคำขอ
var request = new ConvertImageRequest(imageFile, format, null, null);
// เริ่มการดำเนินการแปลง
Stream updatedImage = imagingApi.ConvertImage(request);
// พิมพ์ข้อความแสดงความสำเร็จหากการแปลงสำเร็จ
if (request != null && request.Equals("OK"))
{
Console.WriteLine("The PNG successfully converted to PDF !");
}
// เรียกใช้เมธอดเพื่อบันทึกเอาท์พุตบนไดรฟ์ระบบ
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// วิธีการที่กำหนดเองในการบันทึกวัตถุ Steam เป็นอินสแตนซ์ไฟล์
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
โหลด PNG จากไดรฟ์ภายในเครื่อง
ในส่วนต่อไปนี้ เราจะใช้ CreateConvertedImage API เพื่อแปลงรูปภาพที่ส่งผ่านมาโดยตรงในเนื้อหาคำขอ
- ขั้นตอนแรกคือการสร้างอ็อบเจ็กต์ ImagingApi ซึ่งรับรายละเอียด ID ไคลเอนต์และความลับไคลเอนต์เป็นอาร์กิวเมนต์
- ประการที่สอง อ่านภาพ PNG จากไดรฟ์ภายในเครื่องโดยใช้ File.OpenRead
- ประการที่สาม สร้างอ็อบเจ็กต์ ConvertedImageRequest ซึ่งใช้ ImageStream และรูปแบบเอาต์พุตเป็นอาร์กิวเมนต์
- จากนั้นเรียกวิธี CreateConvertedImage(…) ของ ImagingApi เพื่อดำเนินการแปลง
- สุดท้ายให้บันทึก PDF ผลลัพธ์โดยใช้ File.Create object
// รับ ClientID จาก https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// เส้นทางของไฟล์ PNG อินพุต
string imageFile = "poodle.png";
// รูปแบบไฟล์เอาท์พุต
string format = "pdf";
// ชื่อของเอกสาร PDF ที่ได้ผลลัพธ์
string resultantFile = "resultant.pdf";
try
{
using (var imageStream = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var request = new CreateConvertedImageRequest(imageStream, format, null, null);
Stream updatedImage = imagingApi.CreateConvertedImage(request);
if (request != null && request.Equals("OK"))
{
Console.WriteLine("PNG successfully converted to PDF !");
}
// บันทึกภาพอัพเดตลงในพื้นที่จัดเก็บข้อมูลภายใน
using (var fileStream = File.Create("/Users/nshahbaz/Desktop/" + resultantFile))
{
updatedImage.Seek(0, SeekOrigin.Begin);
updatedImage.CopyTo(fileStream);
}
}
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
คุณอาจลองดาวน์โหลดอินพุต poodle.png และแปลงไฟล์ resultant.pdf เพื่อวัตถุประสงค์ในการทดสอบ
แปลงไฟล์ PNG เป็น PDF ออนไลน์ด้วยคำสั่ง cURL
สามารถเข้าถึง API ของเราได้โดยใช้คำสั่ง cURL ดังนั้นเราจะแปลงไฟล์ PNG เป็น PDF โดยใช้คำสั่ง cURL ก่อนอื่นเราต้องสร้างโทเค็นการเข้าถึง JWT ตามรหัสไคลเอนต์และรายละเอียดของความลับไคลเอนต์
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
เมื่อสร้างโทเค็นการเข้าถึงแล้ว โปรดดำเนินการคำสั่งต่อไปนี้เพื่อแปลงรูปภาพ PNG ที่มีอยู่ในระบบจัดเก็บข้อมูลบนคลาวด์เป็นรูปแบบ PDF จากนั้น PDF ที่ได้จะถูกจัดเก็บในไดรฟ์ภายในเครื่อง
curl -X GET "https://api.aspose.cloud/v3.0/imaging/poodle.png/convert?format=pdf" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o /Users/nshahbaz/Desktop/myResultant.pdf
โปรแกรมแปลงไฟล์ PNG เป็น PDF ฟรี
เพื่อดูความสามารถที่น่าทึ่งของ Cloud API สำหรับการแปลงภาพ PNG เป็น PDF คุณอาจลองใช้แอป [ตัวแปลง PNG ออนไลน์เป็น Acrobat 3D PDF ฟรี] ของเรา19
บทสรุป
ในบทความนี้ เราได้สำรวจความสามารถของ Aspose.Imaging Cloud ในการแปลงไฟล์ PNG เป็น PDF นอกจากนี้ เรายังสังเกตเห็นว่าการแปลงสามารถทำได้โดยใช้ .NET Cloud SDK เช่นเดียวกับคำสั่ง cURL นอกจากนี้ เรายังจัดเตรียม Swagger UI ไว้เพื่อให้คุณทดสอบ REST API ได้โดยตรงภายในเบราว์เซอร์
โปรดทราบว่า Cloud SDK นั้นเผยแพร่ภายใต้ใบอนุญาต MIT และสามารถดาวน์โหลดซอร์สโค้ดฉบับสมบูรณ์ได้ที่ GitHub หากคุณพบปัญหาหรือมีข้อสงสัยใดๆ ในระหว่างการใช้ API โปรดติดต่อเราผ่าน ฟอรัมสนับสนุนผลิตภัณฑ์ฟรี
บทความที่เกี่ยวข้อง
เราขอแนะนำให้เยี่ยมชมลิงค์ต่อไปนี้เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับ: