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

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

| La baja calidad de la producción aumenta HorizontalResolution y VerticalResolution

More in this category