Як конвертувати весь 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 |