Як конвертувати весь Excel робочий зошит в зображення на C#

Як конвертувати весь Excel робочий зошит в зображення на C#

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

Чому конвертувати робочі зошити в зображення?

  • Генерувати попередні перегляди для файлів Excel
  • Архівувати електронні таблиці у форматах зображень
  • Вбудовувати вміст електронних таблиць у звіти або друкарські робочі процеси
  • Відображати електронні таблиці в додатках, які не підтримують нативний перегляд Excel

Покрокова реалізація

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

Додайте Aspose.Cells до вашого проєкту за допомогою NuGet:

dotnet add package Aspose.Cells

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

Workbook workbook = new Workbook("Book1.xlsx");

Крок 3: Налаштуйте параметри зображення

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

Ці налаштування контролюють формат виходу та роздільну здатність. Ви також можете налаштувати:

  • Transparent для фону
  • OnlyArea для виключення полів
  • PrintingPageType для вибору вмісту, який потрібно включити

Крок 4: Відобразіть робочий зошит

WorkbookRender renderer = new WorkbookRender(workbook, options);

Крок 5: Конвертуйте кожну сторінку в зображення

Пройдіться по сторінках і експортуйте кожну:

for (int i = 0; i < renderer.PageCount; i++)
{
    string fileName = $"workbook_page_{i + 1}.png";
    renderer.ToImage(i, fileName);
}

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

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

Вищезазначений код вже зберігає кожен файл зображення на диск, використовуючи визначене ім’я.

// Вихід:
// workbook_page_1.png
// workbook_page_2.png
// ...

Крок 7: Додаткові покращення

Ви можете ще більше налаштувати відображення зображень:

// Приклад: показати сітку
options.ShowGridLines = true;

// Приклад: відобразити вміст усієї таблиці на одній сторінці
options.AllColumnsInOnePagePerSheet = true;

Найкращі практики

  • Використовуйте високу роздільну здатність (200+ dpi) для зображень друкарської якості.
  • Увімкніть AllColumnsInOnePagePerSheet для широких таблиць.
  • Об’єднайте вихід у PDF або галерею зображень для презентацій.

Загальні проблеми та рішення

ПроблемаРішення
Вихідне зображення порожнєПереконайтеся, що робочий зошит завантажено і містить видимі дані
Зображення обрізанеВстановіть OnePagePerSheet = true або налаштуйте масштабування сторінки
Низька якість виходуЗбільште HorizontalResolution та VerticalResolution
 Українська