Cara Mengonversi Excel ke Gambar Thumbnail di C#
Ketika bekerja dengan fitur preview dokumen atau perpustakaan konten, gambar mini memberikan referensi visual yang cepat tanpa memuat seluruh file. tutorial ini menunjukkan bagaimana untuk membuat gambar mini dari file Excel menggunakan Aspose.Cells untuk .NET.
Mengapa menggunakan Thumbnails?
- Membuat Preview Card untuk Galeri Dokumen
- Membangun dashboard visual dari laporan spreadsheet
- Menambahkan visual ringan ke alat pencarian atau pengelolaan file
Panduan Langkah-Langkah
Langkah 1: Menginstal Aspose.Cells
dotnet add package Aspose.Cells
Langkah 2: Mengisi buku kerja
Workbook workbook = new Workbook("FinanceReport.xlsx");
Worksheet sheet = workbook.Worksheets[0];
Langkah 3: Mengkonfigurasi Opsi Rendering Thumbnail
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 96,
VerticalResolution = 96,
OnePagePerSheet = true
};
Langkah 4: Mengalihkan lembar kerja pertama ke gambar
SheetRender renderer = new SheetRender(sheet, options);
renderer.ToImage(0, "preview_temp.png");
Langkah 5: Mengalihkan gambar ke dimensi Thumbnail (optional)
Anda dapat menggunakan perpustakaan grafis (misalnya, System.Drawing) untuk mengubah gambar:
using System.Drawing;
Bitmap original = new Bitmap("preview_temp.png");
Bitmap thumbnail = new Bitmap(original, new Size(160, 120));
thumbnail.Save("thumbnail.png");
Langkah 6: Gunakan gambar Thumbnail
Sekarang Anda memiliki miniatur ringan yang cocok untuk previews.
Contoh lengkap kode
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.");
}
}
Praktik Terbaik
Rekomendasi | Tujuan |
---|---|
Penggunaan OnePagePerSheet = true | Menghindari pembagian multi-page dalam gambar |
Resolusi rendah | Optimisasi untuk generasi mini yang lebih cepat |
Mengalihkan gambar setelah rendering | Lebih banyak kontrol skala dan kualitas |