Hvordan konvertere en cellerange til bilde i C#
Hvordan konvertere en cellerange til bilde i C#
Trenger du å visuelt ekstrakte en del av et spreadsheet? Eksportere et celleområde til et bilde er nyttig for å generere miniatyrer, forhåndsvisninger eller delvis rapporter. Denne guiden viser hvordan du konverterer et definert cellområde i Excel til en høy kvalitet bilde ved hjelp av Aspose.Cells for .NET .
Bruker tilfeller
- Eksportpristabeller eller produktkataloger
- Del en del av et arbeidsblad uten å vise den fulle filen
- Fanger dynamiske ranger for dashboards eller widgets
Step-by-step guide
Steg 1: Installere Aspose.Cells
dotnet add package Aspose.Cells
Steg 2: Last ned arbeidsboken og arbeidsbladen
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
Trinn 3: Definere omfanget for eksport
// Specify a range like A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
Steg 4: Konfigurere bilde rendering alternativer
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
Steg 5: Lag en SheetRender og Render Range
// You can use SheetRender with printing bounds if needed
SheetRender renderer = new SheetRender(worksheet, options);
Steg 6: Eksport Range som bilde
Aspose.Cells har ikke en direkte RangeRender klasse, men du kan fortsatt klippe et bilde ved å fokusere rendering til bare et utvalg:
// 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");
Steg 7: Spare og sjekke utgang
Du vil nå ha et rent gravert bilde av det valgte Excel-området.
Komplett eksemplekode
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.");
}
}
Problemer med tips
Issue | Solution |
---|---|
Bildet inneholder ekstra rader / kolonner | Sørg for at utskriftsområdet er strengt definert |
Range ikke høstet riktig | Set OnePagePerSheet = true |
Blurry tekst | Øke resolusjonsinnstillingene |