Jak przekonwertować pojedynczą komórkę Excela na obraz w C#

Jak przekonwertować pojedynczą komórkę Excela na obraz w C#

Czasami wszystko, czego potrzebujesz, to jedna wartość — cena, etykieta, kod — i chcesz wizualnie wyeksportować tę komórkę. Ten samouczek pokazuje, jak izolować i renderować pojedynczą komórkę Excela jako obraz za pomocą Aspose.Cells for .NET.

Przykłady zastosowań w rzeczywistości

  • Eksportuj ceny lub sumy do wyświetlania produktów
  • Izoluj kluczowe metryki dla pulpitów nawigacyjnych
  • Generuj miniaturki obrazów dla pojedynczych wartości

Przewodnik krok po kroku

Krok 1: Zainstaluj Aspose.Cells for .NET

dotnet add package Aspose.Cells

Krok 2: Załaduj skoroszyt i arkusz

Workbook workbook = new Workbook("KPIReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];

Krok 3: Wybierz docelową komórkę

// Przykład: Komórka B5
Cell cell = sheet.Cells["B5"];

Krok 4: Ustaw obszar wydruku na komórkę

// Wydrukuj tylko tę jedną komórkę
sheet.PageSetup.PrintArea = "B5";

Krok 5: Skonfiguruj opcje renderowania obrazu

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    OnePagePerSheet = true,
    HorizontalResolution = 300,
    VerticalResolution = 300
};

Krok 6: Renderuj używając SheetRender

SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "cell_b5_output.png");

Krok 7: Zapisz i sprawdź wynik

Otrzymasz czysty plik PNG pokazujący tylko tę jedną komórkę z zachowaną formatowaniem.


Pełny przykład kodu

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // Załaduj skoroszyt
        Workbook workbook = new Workbook("KPIReport.xlsx");

        // Uzyskaj dostęp do arkusza i docelowej komórki
        Worksheet sheet = workbook.Worksheets[0];
        Cell cell = sheet.Cells["B5"];

        // Ustaw obszar wydruku na tę komórkę
        sheet.PageSetup.PrintArea = "B5";

        // Ustawienia eksportu obrazu
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            OnePagePerSheet = true,
            HorizontalResolution = 300,
            VerticalResolution = 300
        };

        // Renderuj i zapisz
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "cell_b5_output.png");

        Console.WriteLine("Komórka B5 została pomyślnie wyeksportowana jako obraz.");
    }
}

Przydatne wskazówki

WskazówkaOpis
Zwiększ czytelnośćZwiększ rozdzielczość lub rozmiar czcionki
Dodaj tło lub ramkęSformatuj komórkę przed renderowaniem
Wyrównaj zawartośćUżyj cell.GetStyle() aby dostosować wyrównanie lub odstępy
 Polski