Come convertire un foglio di lavoro in immagine in C#
Come convertire un foglio di lavoro in immagine in C#
Esportare un singolo foglio di lavoro di Excel in un formato immagine (ad es., PNG, JPEG) è utile quando si generano anteprime, si esportano grafici o si condividono rappresentazioni visive in sola lettura del contenuto del foglio di calcolo. Questa guida ti mostra come convertire un foglio di lavoro da un file Excel a un’immagine utilizzando Aspose.Cells per .NET.
Casi d’Uso
- Generare un’anteprima di un foglio di lavoro specifico
- Esportare report formattati per email o documentazione
- Incorporare un singolo foglio in una pagina web o PDF
Guida Passo-Passo
Passo 1: Installa Aspose.Cells per .NET
dotnet add package Aspose.Cells
Passo 2: Carica il File Excel
Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Accedi a un foglio di lavoro specifico
Passo 3: Definisci le Opzioni di Rendering dell’Immagine
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
Passo 4: Crea l’Oggetto SheetRender
SheetRender renderer = new SheetRender(sheet, options);
Passo 5: Renderizza Ogni Pagina in un’Immagine
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
}
Passo 6: Salva le Immagini
Questo codice salva automaticamente un’immagine per ogni pagina stampabile nel foglio di lavoro.
Passo 7: Miglioramenti Facoltativi
Puoi applicare ulteriori impostazioni di layout:
// Mostra le linee della griglia nell'immagine di output
options.ShowGridLines = true;
// Adatta tutto il contenuto su un'unica pagina
options.AllColumnsInOnePagePerSheet = true;
Codice Esempio Completo
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Carica il file Excel
Workbook workbook = new Workbook("SalesData.xlsx");
// Accedi a un foglio di lavoro specifico
Worksheet sheet = workbook.Worksheets["Q1 Report"];
// Definisci le opzioni di rendering dell'immagine
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
// Abilita le linee della griglia se desiderato
options.ShowGridLines = true;
// Renderizza il foglio in immagine(i)
SheetRender renderer = new SheetRender(sheet, options);
for (int pageIndex = 0; pageIndex < renderer.PageCount; pageIndex++)
{
string imageName = $"worksheet_q1_page_{pageIndex + 1}.png";
renderer.ToImage(pageIndex, imageName);
Console.WriteLine($"Salvato: {imageName}");
}
Console.WriteLine("Foglio di lavoro renderizzato con successo in immagine(i).");
}
}
Scenari Comuni e Risoluzione dei Problemi
Problema | Soluzione |
---|---|
Contenuto tagliato | Usa AllColumnsInOnePagePerSheet = true |
Output di bassa qualità | Aumenta la risoluzione dell’immagine |
Linee della griglia mancanti | Imposta ShowGridLines = true |