Рендерирование файлов Excel в качестве изображений является жизненно важным при включении разделных таблиц в веб-страницы, документацию или отчеты. Эта статья показывает, как конвертировать целую рабочую книгу Excel в высококачественные форматы изображения с использованием Aspose.Cells для .NET.
Введение
Конвертировать рабочую книгу Excel в формат изображения может быть невероятно полезным для различных приложений, таких как генерирование предварительных просмотров файлов Excel, архивирование слайдов в более доступном формате, включение контента рассылки в отчеты или печатные рабочие потоки, и отображение разсылок в приложениях, которые не поддерживают коренное просмотр Excel.
Step-by-Step реализация
Шаг 1: Инсталляция Aspose.Cells для .NET
Перед тем, как начать, убедитесь, что вы установили Aspose.Cells в вашем проекте. Вы можете сделать это через NuGet Package Manager:
dotnet add package Aspose.Cells
Шаг 2: Загрузите файл Excel
Первым шагом является загрузка файла Excel в Workbook
Объект, который представляет собой рабочую книгу 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
класс с рабочей книгой и опциями:
WorkbookRender renderer = new WorkbookRender(workbook, options);
Шаг 5: Конвертировать каждую страницу в изображение
Пройдите через каждую страницу в рабочей книге и экспортируйте ее как изображение.Этот пример сохраняет каждый файл изображения на диск с использованием определенного названия.
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Step 2: Load the Excel file
Workbook workbook = new Workbook("Book1.xlsx");
// Step 3: Configure Image Options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
// Step 4: Render the Workbook
WorkbookRender renderer = new WorkbookRender(workbook, options);
// Step 5: Convert Each Page to Image and Save
for (int i = 0; i < renderer.PageCount; i++)
{
string fileName = $"workbook_page_{i + 1}.png";
renderer.ToImage(i, fileName);
Console.WriteLine($"Saved: {fileName}");
}
}
}
Это будет генерировать одну картинку на логическую страницу, основанную на текущем оформлении печати.
Шаг 6: Сохраните изображения
Вышеуказанный код уже сохраняет каждый файл изображения на диск с использованием определенного названия.
// Output:
// workbook_page_1.png
// workbook_page_2.png
// ...
Шаг 7: Опциональные улучшения
Вы можете усовершенствовать рендерирование изображения, используя дополнительные настройки, такие как отображение сетчатки или обеспечение того, чтобы широкие листы были представлены на одной странице.
options.ShowGridLines = true;
options.AllColumnsInOnePagePerSheet = true;
Лучшие практики
- Используйте высокое разрешение (200+ dpi) для печатных изображений.
- Возможность
AllColumnsInOnePagePerSheet
Для широких листов. - Комбинировать вывод в PDF или галерею изображений для презентаций.
Общие проблемы и решения
Проблема | Решение |
---|---|
Источник изображения белый | Убедитесь, что рабочая книга загружена и содержит видимые данные |
Изображение отрезано | Сет OnePagePerSheet = true или корректировать скалирование страницы |
Невысокое качество продукции, повышается HorizontalResolution
и VerticalResolution