El rendimiento de los archivos de Excel como imágenes es esencial cuando se incorporan las placas en páginas web, documentación o informes.Este artículo demuestra cómo convertir un libro de trabajo completo de Excel en formatos de imagen de alta calidad utilizando Aspose.Cells para .NET.
Introducción
Convertir un libro de trabajo de Excel en un formato de imagen puede ser increíblemente útil para diversas aplicaciones, como la generación de previstas de archivos Excel, el archivo de las fichas de pantalla en una forma más accesible, la incorporación del contenido de la hoja de texto en informes o flujos de trabajos de impresión, y la exhibición de los folletos en apps que no soportan la visualización del Excel nativo.
Implementación paso a paso
Paso 1: Instalar Aspose.Cells para .NET
Antes de comenzar, asegúrese de que haya instalado Aspose.Cells en su proyecto. Puedes hacerlo a través del NuGet Package Manager:
dotnet add package Aspose.Cells
Paso 2: Cargar el archivo de Excel
El primer paso es cargar el archivo de Excel en un Workbook
Objeto, que representa un libro de trabajo Excel en la memoria.
Workbook workbook = new Workbook("Book1.xlsx");
Paso 3: Configure opciones de imagen
A continuación, configure las opciones de imagen que controlan cómo se renderán sus imágenes. Esto incluye la configuración del formato de salida y la resolución.
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200
};
Estas configuraciones controlan el formato de salida y la resolución. También puede configurar otras propiedades como: Transparent
por el fondo, OnlyArea
para excluir las margen, y PrintingPageType
para qué contenido incluir.
Paso 4: Render el libro de trabajo
Crea un ejemplo de la WorkbookRender
clase con su libro de trabajo y opciones:
WorkbookRender renderer = new WorkbookRender(workbook, options);
Paso 5: Convertir cada página en imagen
Pasar a través de cada página en el libro de trabajo y exportarlo como una imagen.Este ejemplo salva cada archivo de imagen al disco utilizando un nombre definido.
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}");
}
}
}
Esto generará una imagen por página lógica basada en el diseño de impresión actual.
Paso 6: Salva las imágenes
El código anteriormente ya salva cada archivo de imagen al disco utilizando el nombre definido.
// Output:
// workbook_page_1.png
// workbook_page_2.png
// ...
Paso 7: Mejoras opcionales
Puedes perfeccionar tu rendimiento de imagen aplicando configuraciones adicionales como mostrar líneas de red o asegurar que las hojas amplias se rendan en una página.
options.ShowGridLines = true;
options.AllColumnsInOnePagePerSheet = true;
Mejores Prácticas
- Uso de alta resolución (200+ dpi) para imágenes de calidad de impresión.
- Permite
AllColumnsInOnePagePerSheet
para las hojas amplias. - Combina la salida en un PDF o galería de imágenes para presentaciones.
Problemas y soluciones comunes
Problemas | Solución |
---|---|
La imagen de salida es blanca | Asegurar que el libro de trabajo está cargado y contiene datos visibles |
La imagen se cortó | Sitio OnePagePerSheet = true o ajustar la escalera de página |
| La baja calidad de la producción aumenta HorizontalResolution
y VerticalResolution