如何在C#中将Excel图表转换为图像

如何在C#中将Excel图表转换为图像

图表视觉上代表 Excel 文件中的数据. 当共享报告、构建图表或创建文档时,您可能需要将这些图表出口到图像文件. 本指南显示如何将 Excel 图表转换为图像,使用 Aspose.Cells for .NET

为什么要将图像转换为图像?

  • 将视觉数据嵌入到网站或演示文稿中
  • 电子邮件报告不需要Excel视图
  • 包含图表在PDF或印刷布局

步骤指南

步骤 1: 安装 Aspose.Cells 为 .NET

dotnet add package Aspose.Cells

步骤2:下载工作簿

Workbook workbook = new Workbook("Dashboard.xlsx");
Worksheet sheet = workbook.Worksheets["Charts"];

步骤3:选择图表

// Access the first chart on the worksheet
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:可选改进

您可以通过设置下进一步控制图像大小和质量:

// Control scaling
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()
    {
        // Load the workbook
        Workbook workbook = new Workbook("Dashboard.xlsx");

        // Access the worksheet and first chart
        Worksheet sheet = workbook.Worksheets["Charts"];
        Chart chart = sheet.Charts[0];

        // Set image export options
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 300,
            VerticalResolution = 300,
            SmoothingMode = SmoothingMode.AntiAlias,
            ChartImageWidth = 1200,
            ChartImageHeight = 800
        };

        // Export chart to image
        chart.ToImage("chart_output.png", options);

        Console.WriteLine("Chart successfully exported as image.");
    }
}

常见的场景 & Fixes

问题解决方案
图表看起来混乱增加 ChartImageWidthChartImageHeight
图像缺乏清晰度使用 SmoothingMode = AntiAlias
图被剪辑查看工作表边缘或规模设置
 中文