Cómo convertir un libro de Excel completo a imagen en C#

Cómo convertir un libro de Excel completo a imagen en C#

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.

Por qué convertir libros de trabajo en imágenes?

  • Generar previstas para los archivos de Excel
  • Archivos en formatos de imagen
  • Incorporar el contenido de la hoja de referencia en informes o flujos de trabajo impresos
  • Mostrar tarjetas en aplicaciones que no soportan la visualización nativa de Excel

Implementación paso a paso

Paso 1: Instalar Aspose.Cells para .NET

Añadir Aspose.Cells a su proyecto utilizando NuGet:

dotnet add package Aspose.Cells

Paso 2: Cargar el archivo de Excel

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

Paso 3: Configure opciones de imagen

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:

  • Transparent Para el fondo
  • OnlyArea Exclusión de margen
  • PrintingPageType Para qué contenido incluir

Paso 4: Render el libro de trabajo

WorkbookRender renderer = new WorkbookRender(workbook, options);

Paso 5: Convertir cada página en imagen

Pasar por las páginas y exportar cada una de ellas:

for (int i = 0; i < renderer.PageCount; i++)
{
    string fileName = $"workbook_page_{i + 1}.png";
    renderer.ToImage(i, 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

Usted puede hacer más renderización de imágenes finas:

// Example: show gridlines
options.ShowGridLines = true;

// Example: render the entire sheet content in one page
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

ProblemasSolución
La imagen de salida es blancaAsegurar 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
Producción de baja calidadAumentar HorizontalResolution y VerticalResolution
 Español