Как конвертировать график Excel в изображение на C#

Как конвертировать график Excel в изображение на C#

Графики визуально представляют данные в файлах Excel. При обмене отчетами, создании панелей инструментов или генерации документации вам может понадобиться экспортировать эти графики в файлы изображений. Этот гид показывает, как конвертировать график Excel в изображение с помощью Aspose.Cells для .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: Выберите график

// Получите первый график на листе
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 = 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
График обрезанПроверьте поля листа или параметры масштабирования
 Русский