Jak przekonwertować Excel na obraz miniatury w C#

Jak przekonwertować Excel na obraz miniatury w C#

Kiedy pracujesz z funkcjami podglądu dokumentów lub bibliotekami treści, obrazy miniatur oferują szybki wizualny odniesienie bez ładowania całego pliku. Ten samouczek pokazuje, jak tworzyć obrazy miniatur z plików Excel przy użyciu Aspose.Cells for .NET.

Dlaczego używać miniatur?

  • Twórz karty podglądu dla galerii dokumentów
  • Buduj wizualne pulpity nawigacyjne raportów arkuszy kalkulacyjnych
  • Dodawaj lekkie wizualizacje do narzędzi wyszukiwania lub zarządzania plikami

Przewodnik krok po kroku

Krok 1: Zainstaluj Aspose.Cells

dotnet add package Aspose.Cells

Krok 2: Załaduj skoroszyt

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

Krok 3: Skonfiguruj opcje renderowania miniatur

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

Krok 4: Renderuj pierwszy arkusz jako obraz

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

Krok 5: Zmień rozmiar obrazu do wymiarów miniatury (opcjonalnie)

Możesz użyć biblioteki graficznej (np. System.Drawing), aby zmienić rozmiar obrazu:

using System.Drawing;

Bitmap original = new Bitmap("preview_temp.png");
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");

Krok 6: Użyj obrazu miniatury

Teraz masz lekką miniaturę odpowiednią do podglądów.


Pełny przykładowy kod

using System;
using System.Drawing;
using Aspose.Cells;
using Aspose.Cells.Rendering;

class Program
{
    static void Main()
    {
        // Załaduj plik Excel
        Workbook workbook = new Workbook("FinanceReport.xlsx");
        Worksheet sheet = workbook.Worksheets[0];

        // Skonfiguruj opcje niskiej rozdzielczości
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 96,
            VerticalResolution = 96,
            OnePagePerSheet = true
        };

        // Renderuj cały arkusz jako tymczasowy obraz
        SheetRender renderer = new SheetRender(sheet, options);
        renderer.ToImage(0, "preview_temp.png");

        // Zmień rozmiar na miniaturę
        using (Bitmap original = new Bitmap("preview_temp.png"))
        {
            Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
            thumbnail.Save("thumbnail.png");
        }

        Console.WriteLine("Obraz miniatury utworzony z arkusza kalkulacyjnego Excel.");
    }
}

Najlepsze praktyki

RekomendacjaCel
Użyj OnePagePerSheet = trueZapobiega dzieleniu na wiele stron w obrazie
Niższa rozdzielczośćOptymalizuje szybsze generowanie miniatur
Zmień rozmiar obrazu po renderowaniuWiększa kontrola nad skalowaniem i jakością
 Polski