Come convertire un foglio di lavoro in immagine in C#
Come convertire un foglio di lavoro in immagine in C#
L’esportazione di un singolo foglio di lavoro di Excel in un formato di immagine (ad esempio, PNG, JPEG) è utile quando si generano previsioni, esportano grafici o condividono le rappresentazioni visuali del contenuto dello spreadsheet.Questo guida ti mostra come convertire un foglio di lavoro da un foglio di lavoro di Excel in un’immagine utilizzando Aspose.Cells per .NET.
Casi d’uso
- Generare una preview di un specifico foglio di lavoro
- Rapporti di esportazione formati per e-mail o documentazione
- Incorporare una singola scheda in una pagina web o PDF
Guida passo dopo passo
Passo 1: Installare Aspose.Cells per .NET
dotnet add package Aspose.Cells
Passo 2: Caricare il file Excel
Workbook workbook = new Workbook("SalesData.xlsx");
Worksheet sheet = workbook.Worksheets["Q1 Report"]; // Access specific worksheet
Passo 3: definire le opzioni di rendering dell’immagine
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
Passo 4: Creare un oggetto SheetRender
SheetRender renderer = new SheetRender(sheet, options);
Passo 5: Renderare 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 pagina stampabile nella scheda di lavoro.
Passo 7: Miglioramenti opzionali
Puoi applicare ulteriori impostazioni di layout:
// Show gridlines in the output image
options.ShowGridLines = true;
// Fit all content on a single page
options.AllColumnsInOnePagePerSheet = true;
Codice esemplare completo
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Load the Excel workbook
Workbook workbook = new Workbook("SalesData.xlsx");
// Access a specific worksheet
Worksheet sheet = workbook.Worksheets["Q1 Report"];
// Define image rendering options
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
OnePagePerSheet = true,
HorizontalResolution = 200,
VerticalResolution = 200,
PrintingPageType = PrintingPageType.Default
};
// Enable gridlines if desired
options.ShowGridLines = true;
// Render the sheet to image(s)
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($"Saved: {imageName}");
}
Console.WriteLine("Worksheet successfully rendered to image(s).");
}
}
Scenari comuni e risoluzione dei problemi
Il problema | La soluzione |
---|---|
Cut-off contenuto | Utilizzo AllColumnsInOnePagePerSheet = true |
La produzione è di bassa qualità | Aumentare la risoluzione dell’immagine |
Le linee scomparse | Il set ShowGridLines = true |