Come convertire un intervallo di celle in un'immagine in C#
Come convertire un intervallo di celle in un'immagine in C#
È necessario estrarre visualmente una porzione di una scheda di diffusione?L’esportazione di una gamma di cellule in un’immagine è utile per generare miniature, previsioni o rapporti parziali.Questo manuale mostra come convertire una gamma di cellule definita in Excel in un’immagine di alta qualità utilizzando Aspose.Cells per .NET.
Casi d’uso
- I prezzi delle esportazioni o i cataloghi dei prodotti
- Condividi una parte di un foglio di lavoro senza mostrare il file completo
- Cattura delle ranghe dinamiche per dashboard o widget
Guida passo dopo passo
Passo 1: Installare Aspose.Cells
dotnet add package Aspose.Cells
Passo 2: Carica il libro di lavoro e la scheda di lavoro
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
Passo 3: Definisci il margine di esportazione
// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
Passo 4: Configurare le opzioni di rendering immagine
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
Passo 5: Crea un SheetRender e Render la Range
// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);
Passo 6: Range di esportazione come immagine
Aspose.Cells non ha una classe diretta RangeRender, ma è ancora possibile riprodurre un’immagine concentrando il rendering su solo una gamma selezionata:
// 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");
Passo 7: Salva e verifica il risultato
Ora avrai un’immagine crollata pulita della gamma selezionata di Excel.
Codice esemplare completo
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.");
}
}
Tipi di risoluzione dei problemi
Il problema | La soluzione |
---|---|
Le immagini includono ulteriori righe/colonne | Assicurarsi che la zona di stampa sia strettamente definita |
Rango non correttamente raccolto | Set OnePagePerSheet = true |
Il testo di Blurry | Aumentare le modalità di risoluzione |