Hur man konverterar Excel till miniatyrbild i C#
Hur man konverterar Excel till miniatyrbild i C#
När du arbetar med dokumentpreview-funktioner eller innehållsbibliotek ger miniatyrbilder en snabb visuell referens utan att ladda hela filen.Denna tutorial visar hur man skapar miniatyrbilder från Excel-filer med Aspose.Cells för .NET.
Varför använda Thumbnails?
- Skapa förhandskort för dokumentgallerier
- Bygg visuella dashboards av spreadsheet rapporter
- Lägg till lätta visualer till sök- eller filhanteringsverktyg
Steg för steg guide
Steg 1: Installera Aspose.Cells
dotnet add package Aspose.Cells
Steg 2: Ladda upp arbetsboken
Workbook workbook = new Workbook("FinanceReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];
Steg 3: Konfigurera Thumbnail Rendering-alternativ
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 96,
VerticalResolution = 96,
OnePagePerSheet = true
};
Steg 4: Renderar den första arbetsbladen till en bild
SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "preview_temp.png");
Steg 5: Återställa bild till miniatyrdimensioner (alternativt)
Du kan använda en grafikbibliotek (t.ex. System.Drawing) för att återskapa bilden:
using System.Drawing;
Bitmap original = new Bitmap("preview_temp.png");
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");
Steg 6: Använd miniatyrbilden
Nu har du en lättviktig miniatyr lämplig för förhandsgranskningar.
Komplett Exempelkod
using System;
using System.Drawing;
using Aspose.Cells;
using Aspose.Cells.Rendering;
class Program
{
static void Main()
{
// Load Excel file
Workbook workbook = new Workbook("FinanceReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];
// Configure low-resolution options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 96,
VerticalResolution = 96,
OnePagePerSheet = true
};
// Render full sheet as a temporary image
SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "preview_temp.png");
// Resize to thumbnail
using (Bitmap original = new Bitmap("preview_temp.png"))
{
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");
}
Console.WriteLine("Thumbnail image created from Excel worksheet.");
}
}
Bästa praxis
Rekommendation | syftet |
---|---|
Användning OnePagePerSheet = true | Förhindra att flera sidor splittras i bild |
Lägre resolution | Optimal för snabbare miniatyrgeneration |
Återställa bilden efter rendering | Mer kontroll över skalning och kvalitet |