วิธีการแปลง Excel เป็นภาพขนาดย่อใน C#

วิธีการแปลง Excel เป็นภาพขนาดย่อใน C#

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

ทำไมต้องใช้รูปภาพขนาดย่อ?

  • สร้างการ์ดตัวอย่างสำหรับแกลเลอรีเอกสาร
  • สร้างแดชบอร์ดภาพของรายงานสเปรดชีต
  • เพิ่มภาพที่มีน้ำหนักเบาให้กับเครื่องมือค้นหาหรือการจัดการไฟล์

คู่มือทีละขั้นตอน

ขั้นตอนที่ 1: ติดตั้ง Aspose.Cells

dotnet add package Aspose.Cells

ขั้นตอนที่ 2: โหลดเวิร์กบุ๊ก

Workbook workbook = new Workbook("FinanceReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];

ขั้นตอนที่ 3: กำหนดค่าตัวเลือกการเรนเดอร์รูปภาพขนาดย่อ

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    HorizontalResolution = 96,
    VerticalResolution = 96,
    OnePagePerSheet = true
};

ขั้นตอนที่ 4: เรนเดอร์เวิร์กชีตแรกเป็นรูปภาพ

SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "preview_temp.png");

ขั้นตอนที่ 5: ปรับขนาดรูปภาพเป็นขนาดขนาดย่อ (ไม่บังคับ)

คุณสามารถใช้ไลบรารีกราฟิก (เช่น System.Drawing) เพื่อปรับขนาดรูปภาพ:

using System.Drawing;

Bitmap original = new Bitmap("preview_temp.png");
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");

ขั้นตอนที่ 6: ใช้รูปภาพขนาดย่อ

ตอนนี้คุณมีรูปภาพขนาดย่อที่มีน้ำหนักเบาเหมาะสำหรับการแสดงตัวอย่าง


ตัวอย่างโค้ดทั้งหมด

using System;
using System.Drawing;
using Aspose.Cells;
using Aspose.Cells.Rendering;

class Program
{
    static void Main()
    {
        // โหลดไฟล์ Excel
        Workbook workbook = new Workbook("FinanceReport.xlsx");
        Worksheet sheet = workbook.Worksheets[0];

        // กำหนดค่าตัวเลือกความละเอียดต่ำ
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 96,
            VerticalResolution = 96,
            OnePagePerSheet = true
        };

        // เรนเดอร์เวิร์กชีตทั้งหมดเป็นรูปภาพชั่วคราว
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "preview_temp.png");

        // ปรับขนาดเป็นขนาดย่อ
        using (Bitmap original = new Bitmap("preview_temp.png"))
        {
            Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
            thumbnail.Save("thumbnail.png");
        }

        Console.WriteLine("สร้างรูปภาพขนาดย่อจากเวิร์กชีต Excel เสร็จเรียบร้อยแล้ว.");
    }
}

แนวทางปฏิบัติที่ดีที่สุด

คำแนะนำวัตถุประสงค์
ใช้ OnePagePerSheet = trueป้องกันการแบ่งหลายหน้าในภาพ
ความละเอียดต่ำปรับให้เหมาะสมสำหรับการสร้างรูปภาพขนาดย่อที่เร็วขึ้น
ปรับขนาดรูปภาพหลังการเรนเดอร์ควบคุมการปรับขนาดและคุณภาพได้มากขึ้น
 แบบไทย