Jak převést oblast buněk na obrázek v C#
Jak převést oblast buněk na obrázek v C#
Potřebujete vizuálně extrahovat část tabulky? Exportování rozsahu buněk do obrázku je užitečné pro generování náhledů, předloh nebo částečných zpráv. Tento průvodce ukazuje, jak převést definovaný rozsah buněk v Excelu na vysoce kvalitní obrázek pomocí Aspose.Cells pro .NET.
Případové studie
- Exportování cenových tabulek nebo produktových katalogů
- Sdílení části pracovního listu bez odhalení celého souboru
- Zachycení dynamických rozsahů pro řídicí panely nebo widgety
Krok za krokem
Krok 1: Nainstalujte Aspose.Cells
dotnet add package Aspose.Cells
Krok 2: Načtěte pracovní knihu a pracovní list
Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];
Krok 3: Definujte rozsah pro export
// Určete rozsah jako A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");
Krok 4: Nakonfigurujte možnosti vykreslování obrázků
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
Krok 5: Vytvořte SheetRender a vykreslete rozsah
// Můžete použít SheetRender s tiskovými hranicemi, pokud je to potřeba
SheetRender renderer = new SheetRender(worksheet, options);
Krok 6: Exportujte rozsah jako obrázek
Aspose.Cells nemá přímou třídu RangeRender, ale můžete stále oříznout obrázek tím, že se zaměříte na vykreslování pouze na vybraný rozsah:
// Nastavte tiskovou oblast ručně pro pracovní list
worksheet.PageSetup.PrintArea = "A1:D10";
// Znovu vytvořte SheetRender s nyní aplikovanými tiskovými nastaveními
renderer = new SheetRender(worksheet, options);
// Vykreslete a exportujte
renderer.ToImage(0, "range_output.png");
Krok 7: Uložte a ověřte výstup
Nyní budete mít čistý oříznutý obrázek vybraného rozsahu Excelu.
Kompletní příklad kódu
using System;
using Aspose.Cells;
class Program
{
static void Main()
{
// Načtěte pracovní knihu
Workbook workbook = new Workbook("DataSet.xlsx");
// Přístup k prvnímu pracovnímu listu
Worksheet worksheet = workbook.Worksheets[0];
// Definujte rozsah pro export (A1 až D10)
Range range = worksheet.Cells.CreateRange("A1", "D10");
// Nastavte tiskovou oblast na tento rozsah
worksheet.PageSetup.PrintArea = range.RefersTo;
// Nastavte možnosti exportu obrázků
ImageOrPrintOptions options = new ImageOrPrintOptions
{
ImageType = ImageType.Png,
HorizontalResolution = 200,
VerticalResolution = 200,
OnePagePerSheet = true
};
// Vykreslete pouze určený rozsah
SheetRender renderer = new SheetRender(worksheet, options);
// Exportujte do obrázku
renderer.ToImage(0, "range_output.png");
Console.WriteLine("Rozsah buněk byl úspěšně exportován jako obrázek.");
}
}
Tipy pro řešení problémů
Problém | Řešení |
---|---|
Obrázek obsahuje další řádky/sloupce | Ujistěte se, že tisková oblast je přesně definována |
Rozsah není správně oříznut | Nastavte OnePagePerSheet = true |
Rozmazaný text | Zvyšte nastavení rozlišení |