Cara Mengonversi Rentang Sel Menjadi Gambar di C#
Cara Mengonversi Rentang Sel Menjadi Gambar di C#
Perlu secara visual mengekstrak bagian dari spreadsheet? Mengekspor rentang sel ke gambar berguna untuk menghasilkan miniatur, preview, atau laporan parsial. panduan ini menunjukkan bagaimana untuk mengubah rentang sel yang ditentukan dalam Excel menjadi gambar berkualitas tinggi menggunakan Aspose.Cells untuk .NET.
Kasus Penggunaan
- Tabel Harga Eksport atau Katalog Produk
- Membagikan bagian dari lembar kerja tanpa mengungkapkan file penuh
- Menangkap rang dinamik untuk dashboard atau widget
Panduan Langkah-Langkah
Langkah 1: Menginstal Aspose.Cells
dotnet add package Aspose.Cells
Langkah 2: Mengisi buku kerja dan lembar kerja
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
Langkah 3: Tentukan jangkauan untuk ekspor
// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
Langkah 4: Mengkonfigurasi opsi rendering gambar
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
Langkah 5: Buat SheetRender dan Render the Range
// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);
Langkah 6: Eksport Range sebagai Gambar
Aspose.Cells tidak memiliki kelas langsung RangeRender, tetapi Anda masih dapat klip gambar dengan fokus rendering ke hanya rentang yang dipilih:
// Set print area manually for the worksheet
worksheet.PageSetup.PrintArea = "A1:D10";
// Recreate SheetRender with print settings now applied
renderer = new SheetRender(worksheet, options);
// Render and export
renderer.ToImage(0, "range_output.png");
Langkah 7: Simpan dan Periksa output
Sekarang Anda akan memiliki gambar yang bersih dari rentang Excel yang dipilih.
Contoh lengkap kode
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Load the workbook
Workbook workbook = new Workbook("DataSet.xlsx");
// Access the first worksheet
Worksheet worksheet = workbook.Worksheets[0];
// Define range to export (A1 to D10)
Range range = worksheet.Cells.CreateRange("A1", "D10");
// Set the print area to this range
worksheet.PageSetup.PrintArea = range.RefersTo;
// Set image export options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
// Render only the specified range
SheetRender renderer = new SheetRender(worksheet, options);
// Export to image
renderer.ToImage(0, "range_output.png");
Console.WriteLine("Cell range exported successfully as image.");
}
}
Tips Penyelesaian Masalah
Masalah | Solusi |
---|---|
Gambar mencakup baris/kolom tambahan | Pastikan area cetak ditentukan dengan ketat |
Rangkaian yang tidak dikumpulkan dengan benar | Set OnePagePerSheet = true |
Teks Blurry | Meningkatkan Resolusi |