Hur man konverterar ett kalkylblad till bild i C#

Hur man konverterar ett kalkylblad till bild i C#

Exportera en enda Excel-arbetsbok till ett bildformat (t.ex. PNG, JPEG) är användbart när du genererar förhandsvisningar, exporterar diagram eller delar enbart läs-visuella representationer av innehållet i skivor.Denna guide visar dig hur du konverterar en arbetsbok från en Excel-arbetsbok till en bild med Aspose.Cells för .NET.

Användningsfall

  • Skapa en förhandsgranskning av ett specifikt arbetsblad
  • Exportformaterade rapporter för e-post eller dokumentation
  • Inkludera ett enda blad i en webbsida eller PDF

Steg för steg guide

Steg 1: Installera Aspose.Cells för .NET

dotnet add package Aspose.Cells

Steg 2: Ladda upp Excel-filen

Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Access specific worksheet

Steg 3: Definiera Image Rendering Options

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    OnePagePerSheet = true,
    HorizontalResolution = 200,
    VerticalResolution = 200,
    PrintingPageType = PrintingPageType.Default
};

Steg 4: Skapa SheetRender Object

SheetRender renderer = new SheetRender(sheet, options);

Steg 5: Renderar varje sida till en bild

for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
    string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
    renderer.ToImage(pageIndex, imageName);
}

Steg 6: Spara bilderna

Denna kod sparar automatiskt en bild per tryckbar sida i arbetsbladen.

Steg 7: Optionella förbättringar

Du kan tillämpa ytterligare layoutinställningar:

// Show gridlines in the output image
options.ShowGridLines = true;

// Fit all content on a single page
options.AllColumnsInOnePagePerSheet = true;

Komplett Exempelkod

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Load the Excel workbook
        Workbook workbook = new Workbook("SalesData.xlsx");

        // Access a specific worksheet
        Worksheet sheet = workbook.Worksheets["Q1 Report"];

        // Define image rendering options
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            OnePagePerSheet = true,
            HorizontalResolution = 200,
            VerticalResolution = 200,
            PrintingPageType = PrintingPageType.Default
        };

        // Enable gridlines if desired
        options.ShowGridLines = true;

        // Render the sheet to image(s)
        SheetRender renderer = new SheetRender(sheet, options);

        for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
        {
            string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
            renderer.ToImage(pageIndex, imageName);
            Console.WriteLine($"Saved: {imageName}");
        }

        Console.WriteLine("Worksheet successfully rendered to image(s).");
    }
}

Vanliga scenarier och problemlösning

fråganLösning
Cut-off innehållAnvändning AllColumnsInOnePagePerSheet = true
Produktionen är låg kvalitetÖkad bildupplösning
Gridlinjer saknasSätt ShowGridLines = true
 Svenska