Як конвертувати аркуш у зображення в C#

Як конвертувати аркуш у зображення в C#

Експорт одного аркуша Excel у формат зображення (наприклад, PNG, JPEG) корисний при створенні попередніх переглядів, експорті графіків або обміні візуальними представленнями вмісту таблиць у режимі лише для читання. Цей посібник показує, як конвертувати один аркуш з книги Excel у зображення, використовуючи Aspose.Cells for .NET.

Варіанти використання

  • Генерація попереднього перегляду конкретного аркуша
  • Експорт форматованих звітів для електронної пошти або документації
  • Вбудовування одного аркуша на веб-сторінку або у PDF

Покроковий посібник

Крок 1: Встановіть Aspose.Cells for .NET

dotnet add package Aspose.Cells

Крок 2: Завантажте файл Excel

Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Доступ до конкретного аркуша

Крок 3: Визначте параметри рендерингу зображення

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    OnePagePerSheet = true,
    HorizontalResolution = 200,
    VerticalResolution = 200,
    PrintingPageType = PrintingPageType.Default
};

Крок 4: Створіть об’єкт SheetRender

SheetRender renderer = new SheetRender(sheet, options);

Крок 5: Рендеринг кожної сторінки в зображення

for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
    string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
    renderer.ToImage(pageIndex, imageName);
}

Крок 6: Збережіть зображення

Цей код автоматично зберігає одне зображення на кожну друковану сторінку в аркуші.

Крок 7: Додаткові вдосконалення

Ви можете застосувати додаткові налаштування макета:

// Показати сітку в вихідному зображенні
options.ShowGridLines = true;

// Умістити весь вміст на одній сторінці
options.AllColumnsInOnePagePerSheet = true;

Повний приклад коду

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Завантажте книгу Excel
        Workbook workbook = new Workbook("SalesData.xlsx");

        // Доступ до конкретного аркуша
        Worksheet sheet = workbook.Worksheets["Q1 Report"];

        // Визначте параметри рендерингу зображення
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            OnePagePerSheet = true,
            HorizontalResolution = 200,
            VerticalResolution = 200,
            PrintingPageType = PrintingPageType.Default
        };

        // Увімкніть сітку, якщо потрібно
        options.ShowGridLines = true;

        // Рендеринг аркуша в зображення(я)
        SheetRender renderer = new SheetRender(sheet, options);

        for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
        {
            string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
            renderer.ToImage(pageIndex, imageName);
            Console.WriteLine($"Збережено: {imageName}");
        }

        Console.WriteLine("Аркуш успішно рендерено в зображення(я).");
    }
}

Загальні сценарії та усунення неполадок

ПроблемаРішення
Вирізаний вмістВикористовуйте AllColumnsInOnePagePerSheet = true
Вихідна якість низькаЗбільшіть роздільну здатність зображення
Відсутні сіткиВстановіть ShowGridLines = true
 Українська