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

MasalahSolusi
Gambar mencakup baris/kolom tambahanPastikan area cetak ditentukan dengan ketat
Rangkaian yang tidak dikumpulkan dengan benarSet OnePagePerSheet = true
Teks BlurryMeningkatkan Resolusi
 Indonesia