Bagaimana untuk menukar rangkaian sel kepada imej dalam C#
Bagaimana untuk menukar rangkaian sel kepada imej dalam C#
Mengeksport julat sel ke imej adalah berguna untuk menghasilkan ringkasan, preview, atau laporan sebahagian. panduan ini menunjukkan bagaimana untuk menukar jadual sel yang ditakrifkan dalam Excel ke dalam gambar yang berkualiti tinggi menggunakan Aspose.Cells untuk .NET .
Penggunaan Kasus
- Jadual harga eksport atau katalog produk
- Membahagikan sebahagian daripada lembaran kerja tanpa mendedahkan fail penuh
- Menangkap rang dinamik untuk dashboard atau widget
Panduan Langkah-Langkah
Langkah 1: Instal Aspose.Cells
dotnet add package Aspose.Cells
Langkah 2: Muat turun buku kerja dan lembaran kerja
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
Langkah 3: Menentukan julat untuk eksport
// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
Langkah 4: Mengesetkan opsyen Rendering imej
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
Langkah 5: Mencipta SheetRender dan Render Range
// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);
Langkah 6: Eksport Range sebagai imej
Aspose.Cells tidak mempunyai kelas RangeRender langsung, tetapi anda masih boleh klip imej dengan memberi tumpuan kepada rendering hanya kepada julat 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 semak output
Anda kini akan mempunyai imej yang dipotong bersih daripada julat Excel yang dipilih.
Keseluruhan contoh kod
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
Issue | Solution |
---|---|
Imej termasuk baris/kolom tambahan | Pastikan kawasan cetak ditakrifkan dengan ketat |
Rangkaian tidak dikumpulkan dengan betul | Set OnePagePerSheet = true |
Perbincangan Blurry | Meningkatkan penyelesaian |