แปลง PDF เป็นรูปภาพโดยใช้ C#

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

หัวข้อต่อไปนี้จะกล่าวถึง/ครอบคลุมในบทความนี้:

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

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

คุณสามารถ ดาวน์โหลด DLL ของ API หรือติดตั้งโดยใช้ NuGet

Install-Package Aspose.Pdf

C# แปลง PDF เป็นรูปภาพ PNG - เพียงไม่กี่ขั้นตอน

คุณสามารถแปลงไฟล์ PDF เป็นภาพ PNG โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Document ด้วยเส้นทางไฟล์ PDF อินพุต
  2. วนซ้ำหน้าทั้งหมดของ PDF โดยใช้คอลเลกชัน Document.Pages และดำเนินการต่อไปนี้: 2.1. สร้างอินสแตนซ์ของคลาส ความละเอียด และตั้งค่า 2.2. สร้างอินสแตนซ์ของคลาส PngDevice และส่งวัตถุความกว้าง ความสูง และความละเอียด 2.3. เรียกเมธอด Process(Page, String) พร้อมหมายเลขหน้าและเส้นทางรูปภาพ PNG เอาท์พุตเพื่อแปลงเพจเป็น PNG

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

// เปิดเอกสาร
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // กำหนดความละเอียด
    Resolution resolution = new Resolution(300);

    // สร้างอุปกรณ์ PNG ด้วยคุณสมบัติที่ระบุ
    // ความกว้าง ความสูง ความละเอียด
    PngDevice PngDevice = new PngDevice(500, 700, resolution);

    // แปลงหน้าเฉพาะและบันทึกภาพเพื่อสตรีม
    PngDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Png");
}
แปลง PDF เป็นรูปภาพ PNG โดยใช้ C#

แปลง PDF เป็นรูปภาพ PNG โดยใช้ C#

คลาส Document แสดงถึงเอกสาร PDF มีคุณสมบัติและวิธีการหลายประการเพื่อใช้งานฟังก์ชันต่างๆ คอลเลกชัน Document.Pages คือคอลเลกชันของหน้าเอกสารและการกำหนดหมายเลขหน้าจะเริ่มต้นจาก 1 ในคอลเลกชัน คลาส ความละเอียด กำหนดความละเอียดของภาพ คลาส PngDevice อนุญาตให้บันทึกหน้าของเอกสาร PDF ลงในรูปภาพ PNG คลาสนี้มีวิธีการต่อไปนี้ในการบันทึกหน้าลงในอิมเมจ PNG:

C# แปลงรูปภาพ PDF เป็น JPG - ทีละขั้นตอน

คุณสามารถแปลงไฟล์ PDF เป็นรูปภาพ JPG โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Document ด้วยเส้นทางไฟล์อินพุต
  2. วนซ้ำหน้าทั้งหมดของ PDF โดยใช้คอลเลกชัน Document.Pages และดำเนินการต่อไปนี้: 2.1. สร้างอินสแตนซ์ของคลาส ความละเอียด และตั้งค่า 2.2. สร้างอินสแตนซ์ของคลาส JpegDevice และส่งวัตถุความกว้าง ความสูง และความละเอียด 2.3. เรียกเมธอด Process(Page, String) พร้อมหมายเลขหน้าและเส้นทางรูปภาพ JPG เอาท์พุตเพื่อแปลงหน้าเป็น JPG

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

// เปิดเอกสาร
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // กำหนดความละเอียด
    Resolution resolution = new Resolution(300);
    
    // สร้างอุปกรณ์ Jpeg ด้วยคุณสมบัติที่ระบุ
    // ความกว้าง ความสูง ความละเอียด
    JpegDevice JpegDevice = new JpegDevice(500, 700, resolution);

    // แปลงหน้าเฉพาะและบันทึกภาพเพื่อสตรีม
    JpegDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Jpg");
}
แปลงรูปภาพ PDF เป็น JPG โดยใช้ C#

แปลงรูปภาพ PDF เป็น JPG โดยใช้ C#

การแปลง C# PDF เป็น BMP - คำแนะนำแบบสั้น

คุณสามารถแปลงไฟล์ PDF เป็นอิมเมจ BMP โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Document ด้วยเส้นทางไฟล์อินพุต
  2. วนซ้ำหน้าทั้งหมดของ PDF โดยใช้คอลเลกชัน Document.Pages และดำเนินการต่อไปนี้: 2.1 สร้างอินสแตนซ์ของคลาส ความละเอียด และตั้งค่า 2.2 สร้างอินสแตนซ์ของคลาส BmpDevice และส่งวัตถุความกว้าง ความสูง และความละเอียด 2.3 เรียกใช้เมธอด Process(Page, String) พร้อมหมายเลขหน้าและเส้นทางอิมเมจ BMP เอาท์พุตเพื่อแปลงเพจเป็น BMP

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

// เปิดเอกสาร
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // กำหนดความละเอียด
    Resolution resolution = new Resolution(300);
    
    // สร้างอุปกรณ์ PNG ด้วยคุณสมบัติที่ระบุ
    // ความกว้าง ความสูง ความละเอียด
    BmpDevice BmpDevice = new BmpDevice(500, 700, resolution);

    // แปลงหน้าเฉพาะและบันทึกภาพเพื่อสตรีม
    BmpDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".bmp");
}
การแปลง PDF เป็น BMP โดยใช้ C#

การแปลง PDF เป็น BMP โดยใช้ C#

บทช่วยสอน C#: วิธีแปลง PDF เป็น TIFF

คุณสามารถแปลงไฟล์ PDF เป็น TIFF โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  1. สร้างอินสแตนซ์ของคลาส Document ด้วยเส้นทางไฟล์อินพุต
  2. เริ่มต้นอินสแตนซ์ของคลาส ความละเอียด และตั้งค่า
  3. สร้างอินสแตนซ์ของคลาส TiffSettings
  4. ตั้งค่าคุณสมบัติต่างๆ เช่น การบีบอัด ความลึก รูปร่าง และ SkipBlankPages เป็นต้น
  5. สร้างอินสแตนซ์ของคลาส TiffDevice ด้วยออบเจ็กต์ Resolution และ TiffSettings
  6. เรียกเมธอด Process(Document, String) ด้วยอ็อบเจ็กต์ Document และเส้นทางไฟล์ TIFF เอาต์พุตเพื่อแปลงเอกสารเป็น TIFF

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีแปลงไฟล์ PDF เป็น TIFF โดยใช้ C#

// เปิดเอกสาร
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

// กำหนดความละเอียด
Resolution resolution = new Resolution(300);

// สร้างวัตถุ TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
    Compression = CompressionType.None,
    Depth = ColorDepth.Default,
    Shape = ShapeType.Portrait,
    SkipBlankPages = false
};

// สร้างอุปกรณ์ TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);

// แปลงหน้าเฉพาะและบันทึกภาพเพื่อสตรีม
tiffDevice.Process(pdfDocument, "C:\\Files\\AllPagesToTIFF_out.tif");
การแปลง PDF เป็น TIFF โดยใช้ C#

การแปลง PDF เป็น TIFF โดยใช้ C#

คลาส TiffSettings มีการตั้งค่าหลายอย่างสำหรับการแปลง PDF เป็น TIFF คุณสามารถตั้งค่าความสว่าง การบีบอัด CoordinateType ความลึก ระยะขอบ รูปร่าง และ SkipBlankPages ในขณะที่แปลง PDF เป็น TIFF

C# แยกรูปภาพจากเอกสาร PDF

คุณสามารถแยกรูปภาพทั้งหมดออกจากไฟล์ PDF ใดๆ โดยทางโปรแกรมโดยทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของคลาส Document ด้วยเส้นทางไฟล์อินพุต
  • สำหรับแต่ละหน้า ให้สร้างอินสแตนซ์ XImage ให้กับทุกภาพในคอลเลกชัน Page.Resources.Images
  • สร้างอินสแตนซ์ของคลาส FileStream ด้วยเส้นทางไฟล์รูปภาพเอาต์พุต
  • เรียกเมธอด Save() ด้วยวัตถุ FileStream เพื่อบันทึกรูปภาพ
  • สุดท้าย ปิด FileStream โดยใช้เมธอด Close()

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

// เปิดเอกสาร
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

// วนซ้ำหน้าต่างๆ
foreach (var page in pdfDocument.Pages)
{
    int imageCounter = 1;
    // วนซ้ำทุกภาพ
    foreach (XImage image in page.Resources.Images)
    {
        // สร้างสตรีมไฟล์สำหรับรูปภาพ
        FileStream outputImage = new FileStream(String.Format("C:\\Files\\Page{0}_Image{1}.jpg", page.Number, imageCounter), FileMode.Create);

        // บันทึกภาพที่ส่งออก
        image.Save(outputImage);

        // ปิดสตรีม
        outputImage.Close();

        imageCounter++;
    }
}
แยกรูปภาพจากเอกสาร PDF โดยใช้ C#

แยกรูปภาพจากเอกสาร PDF โดยใช้ C#

คลาส XImage แสดงถึงรูปภาพ X-Object มีคุณสมบัติและวิธีการมากมายในการทำงานกับรูปภาพ คลาส XImage มีวิธีการต่อไปนี้เพื่อบันทึกออบเจ็กต์รูปภาพ:

คอลเลกชั่น Page.Resources.Images แสดงถึงคอลเลกชั่นรูปภาพสำหรับเพจเฉพาะ

รับใบอนุญาตฟรี

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

บทสรุป

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

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