วิธีการแปลงแผนภูมิ Excel เป็นภาพใน C#
วิธีการแปลงแผนภูมิ Excel เป็นภาพใน C#
Charts แสดงข้อมูลในไฟล์ Excel อย่างชัดเจน เมื่อแชร์รายงาน สร้างแดชบอร์ด หรือสร้างเอกสาร คุณอาจต้องการส่งออกกราฟเหล่านั้นเป็นไฟล์ภาพ คู่มือนี้จะแสดงวิธีการแปลงกราฟ Excel เป็นภาพโดยใช้ Aspose.Cells for .NET
ทำไมต้องแปลงกราฟเป็นภาพ?
- ฝังข้อมูลภาพในเว็บไซต์หรือการนำเสนอ
- ส่งอีเมลรายงานโดยไม่ต้องใช้ผู้ดู Excel
- รวมกราฟใน PDF หรือรูปแบบการพิมพ์
คู่มือทีละขั้นตอน
ขั้นตอนที่ 1: ติดตั้ง Aspose.Cells for .NET
dotnet add package Aspose.Cells
ขั้นตอนที่ 2: โหลด Workbook
Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];
ขั้นตอนที่ 3: เลือกกราฟ
// เข้าถึงกราฟแรกในแผ่นงาน
Chart chart = sheet.Charts[0];
ขั้นตอนที่ 4: ตั้งค่าตัวเลือกการส่งออก
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
Transparent = false
};
ขั้นตอนที่ 5: แปลงกราฟเป็นภาพ
chart.ToImage("chart_output.png", options);
ขั้นตอนที่ 6: บันทึกและตรวจสอบ
นี่จะบันทึกกราฟของคุณเป็นไฟล์ PNG คุณยังสามารถเลือก JPEG, BMP, TIFF เป็นต้น
ขั้นตอนที่ 7: การปรับปรุงเพิ่มเติม (ไม่บังคับ)
คุณสามารถควบคุมขนาดและคุณภาพของภาพได้มากขึ้นโดยการตั้งค่า:
// ควบคุมการปรับขนาด
chart.ToImage("chart_highres.png", new ImageOrPrintOptions
{
ImageType = ImageType.Jpeg,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
});
ตัวอย่างโค้ดที่สมบูรณ์
using System;
using Aspose.Cells;
using Aspose.Cells.Rendering;
using System.Drawing.Drawing2D;
class Program
{
static void Main()
{
// โหลด workbook
Workbook workbook = new Workbook("Dashboard.xlsx");
// เข้าถึงแผ่นงานและกราฟแรก
Worksheet sheet = workbook.Worksheets["Charts"];
Chart chart = sheet.Charts[0];
// ตั้งค่าตัวเลือกการส่งออกรูปภาพ
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 300,
VerticalResolution = 300,
SmoothingMode = SmoothingMode.AntiAlias,
ChartImageWidth = 1200,
ChartImageHeight = 800
};
// ส่งออกกราฟเป็นภาพ
chart.ToImage("chart_output.png", options);
Console.WriteLine("กราฟถูกส่งออกเป็นภาพเรียบร้อยแล้ว.");
}
}
สถานการณ์ทั่วไปและวิธีแก้ไข
ปัญหา | วิธีแก้ไข |
---|---|
กราฟดูเบลอ | เพิ่ม ChartImageWidth และ ChartImageHeight |
ภาพขาดความชัดเจน | ใช้ SmoothingMode = AntiAlias |
กราฟถูกตัด | ตรวจสอบขอบเขตของแผ่นงานหรือการตั้งค่าการปรับขนาด |