แปลงรูปภาพเป็น PDF ใน C#

ในบางกรณี คุณอาจต้องแปลง PNG, JPG หรือไฟล์ภาพอื่นๆ เป็นเอกสาร PDF สิ่งนี้อาจมีประโยชน์ในสถานการณ์ต่างๆ เช่น การแปลงหน้าใบแจ้งหนี้ที่สแกนเป็น PDF ในบทความนี้ คุณจะได้เรียนรู้วิธีแปลงรูปภาพเป็นรูปแบบ PDF ใน C# เราจะสาธิตการแปลงรูปภาพหลายรูปเป็น PDF โดยทางโปรแกรม

C# Image to PDF Converter API - ดาวน์โหลดฟรี

สำหรับการแปลงรูปภาพเป็น PDF เราจะใช้ Aspose.PDF for .NET เป็น PDF API อันทรงพลังที่ให้คุณสร้างและจัดการไฟล์ PDF จากภายในแอปพลิเคชัน .NET ของคุณ นอกจากนี้ยังให้การแปลงไฟล์ PDF กลับไปกลับมาที่มีความแม่นยำสูง คุณสามารถ ดาวน์โหลด API หรือติดตั้งโดยใช้ NuGet

PM> Install-Package Aspose.Pdf

แปลงรูปภาพเป็น PDF ใน C#

ก่อนอื่นมาดูวิธีแปลงรูปภาพเดียวเป็นไฟล์ PDF ใน C# ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้

  • สร้างอินสแตนซ์ของคลาส Document
  • เพิ่ม หน้า ใหม่ลงในเอกสาร PDF โดยใช้วิธี Document.Pages.Add() และตั้งค่าคุณสมบัติของหน้า
  • โหลดไฟล์ภาพลงในวัตถุ FileStream
  • เพิ่ม Image ใหม่ลงในหน้าโดยใช้เมธอด Page.Paragraphs.Add(Image)
  • ตั้งค่าสตรีมรูปภาพโดยใช้คุณสมบัติ Image.ImageStream
  • สุดท้าย บันทึกเอกสาร PDF โดยใช้วิธี Document.Save(String)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแปลงรูปภาพ PNG เป็น PDF ใน C#

// สร้างเอกสารใหม่
Document doc = new Document();

// เส้นทางของไฟล์รูปภาพ
string imageFile = @"aspose.png";

// เพิ่มหน้าไปยังหน้าคอลเลกชันของเอกสาร
var page = doc.Pages.Add();

// โหลดภาพลงในสตรีม
FileStream imageStream = new FileStream(imageFile, FileMode.Open);

// กำหนดระยะขอบให้พอดีกับภาพ เป็นต้น
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Aspose.Pdf.Rectangle(0, 0, 400, 400);

// สร้างวัตถุรูปภาพ
Image image1 = new Image();

// เพิ่มรูปภาพลงในคอลเลกชันย่อหน้าของส่วน
page.Paragraphs.Add(image1);

// ตั้งค่าการสตรีมไฟล์รูปภาพ
image1.ImageStream = imageStream; 

// บันทึกไฟล์ PDF ที่เป็นผลลัพธ์
doc.Save("image-to-pdf.pdf");

แปลงรูปภาพหลายรูปเป็น PDF ใน C#

ต่อไปนี้เป็นขั้นตอนในการแปลงรูปภาพหลายรูปเป็นไฟล์ PDF ไฟล์เดียวใน C#

  • สร้างอินสแตนซ์ของคลาส Document
  • รับรายชื่อไฟล์รูปภาพในอาร์เรย์โดยใช้เมธอด Directory.GetFiles(string)
  • สำหรับไฟล์รูปภาพแต่ละไฟล์ในรายการ ให้ทำดังต่อไปนี้:
    • เพิ่ม หน้า ใหม่ลงในเอกสาร PDF โดยใช้วิธี Document.Pages.Add() และตั้งค่าคุณสมบัติของหน้า
    • โหลดไฟล์ภาพลงในวัตถุ FileStream
    • เพิ่ม Image ใหม่ลงในหน้าโดยใช้เมธอด Page.Paragraphs.Add(Image)
    • ตั้งค่าสตรีมรูปภาพโดยใช้คุณสมบัติ Image.ImageStream
  • สุดท้าย บันทึกเอกสาร PDF โดยใช้วิธี Document.Save(String)

ตัวอย่างโค้ดต่อไปนี้แสดงการแปลงรูปภาพหลายรูปเป็น PDF เดียวใน C#

// สร้างเอกสารใหม่
Document doc = new Document();

// เข้าถึงไฟล์รูปภาพในโฟลเดอร์
string[] fileList = Directory.GetFiles(@"D:/images/");

foreach (String file in fileList)
{
    // เพิ่มหน้าไปยังหน้าคอลเลกชันของเอกสาร
    var page = doc.Pages.Add();

    // โหลดภาพลงในสตรีม
    FileStream imageStream = new FileStream(file, FileMode.Open);

    // กำหนดระยะขอบให้พอดีกับภาพ เป็นต้น
    page.PageInfo.Margin.Bottom = 0;
    page.PageInfo.Margin.Top = 0;
    page.PageInfo.Margin.Left = 0;
    page.PageInfo.Margin.Right = 0;
    page.CropBox = new Pdf.Rectangle(0, 0, 400, 400);

    // สร้างวัตถุรูปภาพ
    Image image1 = new Image();

    // เพิ่มรูปภาพลงในคอลเลกชันย่อหน้าของส่วน
    page.Paragraphs.Add(image1);

    // ตั้งค่าการสตรีมไฟล์รูปภาพ
    image1.ImageStream = imageStream;
}

// บันทึกไฟล์ PDF ที่เป็นผลลัพธ์
doc.Save("multiple-images-to-pdf.pdf");

Image to PDF C# Converter - รับใบอนุญาตฟรี

คุณสามารถแปลงรูปภาพเป็น PDF ได้โดยไม่มีข้อจำกัดในการประเมินโดย รับใบอนุญาตชั่วคราวฟรี

C# .NET PDF API - อ่านเพิ่มเติม

คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ Aspose.PDF for .NET โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีข้อสงสัย โปรดแจ้งให้เราทราบผ่าน ฟอรัม ของเรา

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีแปลงรูปภาพเป็นรูปแบบ PDF ใน C# นอกจากนี้ คุณได้เห็นวิธีแปลงรูปภาพหลายรูปเป็น PDF เดียวโดยทางโปรแกรม ดังนั้น คุณสามารถดำเนินการแปลงรูปภาพเป็น PDF ในรูปแบบใดก็ได้ในแอปพลิเคชันของคุณ

ดูสิ่งนี้ด้วย