Aspose.Cells Image Converter pro .NET
Aspose.Cells Image Converter for .NET is a lightweight, high-performance API designed specifically to transform Microsoft Excel spreadsheets (XLS, XLSX, XLTM, XLSM) into a variety of image formats—including TIFF, JPEG, PNG, BMP, EMF, and GIF—while preserving layout, formatting, charts, and embedded objects. Leveraging the proven rendering engine of Aspose.Cells, this plugin offers fine-grained control over export options, streaming support for large workbooks, and metered licensing to track usage in production environments.
Instalace a nastavení
Přidejte sestavu Aspose.Cells Image Converter do svého projektu .NET prostřednictvím NuGet nebo přímým odkazem na DLL. Pro podrobný návod viz Instalace .
Před vykreslením jakýchkoli obrázků inicializujte měřenou licenci, jak je popsáno v Měřená licence .
Funkce a vlastnosti
Řízení odsazení JSON, kódování a zásad pro null.
Zachování úvodních nul, speciálních znaků a formátů specifických pro místní nastavení.
Validace výstupu a zajištění kvality
• Exportujte celé sešity s více listy do jednoho, více‑stránkového TIFF kontejneru. • Každý list je vykreslen jako jeden TIFF rámec pro archivaci nebo dávkové zpracování.
Programové testování: Vyhledat a ověřit konkrétní hodnoty v generovaném JSON.
Kontroly integrity dat: Zajistit, aby kritická pole byla ve výstupu přítomna.
Zpracování chyb a validace
• Vlastní výstupní vzory: Vytvořte více obrázků s inteligentními konvencemi pojmenování pomocí zástupných znaků. • Řízení indexu listu: Přizpůsobte číslování listů pomocí předpon a hodnot posunu. • Indexování rozdělených částí: Zpracovávejte velké pracovní listy rozdělené do více souborů obrázků s postupným pojmenováním. • Automatické uspořádání souborů: Systematicky pojmenujte výstupní soubory podle pozic listu a stránky.
Callbacky validace pro zpracování nebo opravu chyb.
Přehledná hierarchie výjimek pro ladění a odstraňování problémů.
Základní konverze: Excel do JSON
Nejjednodušší způsob, jak převést soubor Excel do JSON pomocí jediného řádku kódu:.
Toto převádí celý sešit do souboru JSON s výchozími nastaveními.
Pokročilá konverze s výstupem založeným na streamu.
Převést do paměťových streamů pro flexibilní zpracování a integraci:
REST API koncové body vracející data Excel jako JSON.
Mikroslužby zpracovávající data v paměti
Ukládání JSON reprezentací do mezipaměti v Redis nebo paměťové cache.
Datové toky v reálném čase ze šablon Excel
Testování a validace bez souborového I/O.
Rozpis funkcí: Validace výstupu
Ověřte, že převedený JSON obsahuje očekávaná data:.
Příklady použití
Strategie validace:
Vyhledávání obsahu: Použijte IndexOf() k nalezení konkrétních názvů polí nebo hodnot:
using Aspose.Cells.LowCode;
using Aspose.Cells;
string src = "CellsJava46030_2.xlsx";
ImageConverter.Process(src, "PluginImage.png");Parsování JSON: Analyzujte výstup pro ověření platnosti struktury.
• Pojmenování zástupných znaků: Použijte LowCodeSaveOptionsProviderOfPlaceHolders pro systematickou organizaci souborů. • Konzistentní předpony: Používejte smysluplné předpony (např. “Invoice”, “Report”) pro snadnou identifikaci. • Správa offsetu: Používejte indexování od jedné (SheetIndexOffset = 1) pro uživatelsky přívětivé názvy souborů.
Validace schématu: Porovnejte s očekávaným JSON schématem:
using Aspose.Cells.LowCode;
using Aspose.Cells;
using System.IO;
using Aspose.Cells.Drawing;
using Aspose.Cells.Rendering;
string src = "CellsJava46030_2.xlsx";
// Configure load options
LowCodeLoadOptions lclopts = new LowCodeLoadOptions();
lclopts.InputFile = src;
// Configure image save options
LowCodeImageSaveOptions lcsopts = new LowCodeImageSaveOptions();
ImageOrPrintOptions imgOpts = new ImageOrPrintOptions();
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Png;
lcsopts.ImageOptions = imgOpts;
// Set up custom file naming with placeholders
LowCodeSaveOptionsProviderOfPlaceHolders p = new LowCodeSaveOptionsProviderOfPlaceHolders(
"result\\PluginImage${SheetIndexPrefix}${SheetIndex}_${SplitPartIndex}.png");
p.SheetIndexOffset = 1; // Start sheet numbering from 1 instead of 0
p.SheetIndexPrefix = "S"; // Add \"S\" prefix to sheet numbers
p.SplitPartIndexOffset = 1; // Start split part numbering from 1
// Ensure output directory exists
Directory.CreateDirectory("result");
// Perform conversion
ImageConverter.Process(lclopts, lcsopts, p);
// Verify output
Console.WriteLine(File.Exists("result\\PluginImageS2_2.png")
? "Expected image file has been generated"
: "Cannot find the expected image file");Kontrola datových typů: Zajistěte, aby čísla, data a logické hodnoty byly správně naformátovány
Testy úplnosti: Ověřte, že jsou přítomny všechny očekávané řádky/sloupce:
LowCodeSaveOptionsProviderOfPlaceHolders p = new LowCodeSaveOptionsProviderOfPlaceHolders(
"output\\Report${SheetIndexPrefix}${SheetIndex}_Page${SplitPartIndex}.png");
p.SheetIndexOffset = 1; // Sheets numbered from 1
p.SheetIndexPrefix = "Sheet"; // Output: "ReportSheet1_Page1.png"
p.SplitPartIndexOffset = 1; // Pages numbered from 1Rozpis funkcí: Výhody LowCode API:
${SheetIndex}: Index pracovního listu (ve výchozím nastavení od nuly, lze přizpůsobit pomocí posunu)${SheetIndexPrefix}: Vlastní předpona pro čísla listů (např. “S”, “Sheet”, “Tab”)${SplitPartIndex}: Index stránky/rozdělení pro velké pracovní listy (0‑základní ve výchozím nastavení, přizpůsobitelné offsetem)
Snížená paměťová náročnost:
- S předponou “S” a offsetem 1:
PluginImageS1_1.png,PluginImageS2_1.png,PluginImageS2_2.png - S předponou “Sheet” a offsetem 1:
ReportSheet1_Page1.png,ReportSheet2_Page1.png - Žádná předpona, nulová báze:
Output0_0.png,Output1_0.png
Co je Aspose.Cells Image Converter pro .NET? Zaměřený nástroj pro programatickou konverzi tabulek Excel na obrázky v aplikacích .NET….:
- Pro scénáře vyžadující maximální přizpůsobení použijte tradiční API Workbook:
- Příklad integrace Web API
- Použijte konverzi založenou na streamu v kontrolerech ASP.NET Core:
- Dávkové zpracování s validací
- Zpracujte více souborů s ověřením výstupu:
Použijte LowCode API: Využijte JsonConverter.Process() pro rychlejší konverze s menší zátěží.
Zpracování založené na streamu: Použijte paměťové streamy pro operace v paměti, abyste se vyhnuli souborovému I/O.:
ImageOrPrintOptions imgOpts = new ImageOrPrintOptions();
// PNG format (lossless, supports transparency)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Png;
// JPEG format (compressed, smaller file size)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Jpeg;
// TIFF format (multi-page, archival quality)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Tiff;
// BMP format (uncompressed)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Bmp;
// EMF format (vector, scalable)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Emf;
// GIF format (animation support)
imgOpts.ImageType = Aspose.Cells.Drawing.ImageType.Gif;Velikosti dávky: Pro velké sešity povolte režim streamování a upravte velikosti dávky.
Asynchronní operace: Používejte asynchronní API pro dlouhodobé konverze ve webových aplikacích.:
// Zero-based indexing (default)
p.SheetIndexOffset = 0; // Sheets: 0, 1, 2, 3...
// One-based indexing (user-friendly)
p.SheetIndexOffset = 1; // Sheets: 1, 2, 3, 4...
// Custom starting point
p.SheetIndexOffset = 100; // Sheets: 100, 101, 102...
// Add descriptive prefixes
p.SheetIndexPrefix = "Q1_"; // Output: PluginImageQ1_1_1.png
p.SheetIndexPrefix = "Report"; // Output: PluginImageReport1_1.pngKvalita dat
Validace výstupu: Vždy validujte JSON výstup pomocí řetězcových vyhledávání nebo JSON parserů.:
// One-based page numbering
p.SplitPartIndexOffset = 1; // Pages: 1, 2, 3, 4...
// Zero-based page numbering
p.SplitPartIndexOffset = 0; // Pages: 0, 1, 2, 3...
// Custom starting page number
p.SplitPartIndexOffset = 10; // Pages: 10, 11, 12...Definice schématu: Definujte JSON schémata jednou a znovu je použijte napříč více úkoly.
Transformátory: Používejte vlastní transformátory pro konzistentní formátování dat a čísel.:
using Aspose.Cells;
using Aspose.Cells.Rendering;
using Aspose.Cells.Drawing;
Workbook book = new Workbook("Workbook.xlsx");
Worksheet sheet = book.Worksheets[0];
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();
imgOptions.ImageType = ImageType.Png;
imgOptions.HorizontalResolution = 300;
imgOptions.VerticalResolution = 300;
imgOptions.OnlyArea = false;
SheetRender sr = new SheetRender(sheet, imgOptions);
int pageCount = sr.PageCount;
for (int idxPage = 0; idxPage < pageCount; idxPage++)
{
sr.ToImage(idxPage, "out_" + (idxPage + 1) + ".png");
}${SheetIndex}: Index listu (s aplikovaným posunem)
Optimalizace výkonu
• Použijte LowCode API: Využijte ImageConverter.Process() pro jednodušší, rychlejší konverze. • Ukládání do mezipaměti: Ukládejte často používané šablony pro opakované konverze. • Režim streamování: Použijte streamování pro konverze ve vysokém DPI velkých sešitů. • Správné uvolnění: Okamžitě uvolněte objekty sešitu a proudu, aby se uvolnila paměť.
Uvolňování streamů: Vždy po použití uvolněte paměťové streamy, aby se uvolnila paměť.
• Pojmenování zástupných znaků: Použijte LowCodeSaveOptionsProviderOfPlaceHolders pro systematickou organizaci souborů. • Konsistentní předpony: Použijte smysluplné předpony (např. “Invoice”, “Report”) pro snadnou identifikaci. • Správa offsetu: Použijte indexování od jedné (SheetIndexOffset = 1) pro uživatelsky přívětivé názvy souborů.
Vyčištění prostředků: Zabalte operace konverze do bloků try-finally pro zaručené vyčištění.
• Výběr formátu:Formát: Vyberte PNG pro průhlednost, JPEG pro menší soubory, TIFF pro archivaci. • Nastavení rozlišení:Rozlišení: Nastavte vhodné hodnoty DPI v ImageOrPrintOptions pro tisk vs. webové použití. • Ověření fontů: Ověřte dostupnost fontů, aby nedocházelo k tichým náhradám. • Validace výstupu: Vždy zkontrolujte existenci souboru po konverzi pomocí File.Exists().
Pokrytí formátů
• Inicializovat jednou: Inicializujte licencování jednou při spuštění, aby se předešlo opakovaným kontrolám. • Definovat tiskové oblasti: Nastavte tiskové oblasti a nastavení stránky v šablonách Excelu pro konzistenci. • Sdružené instance: Používejte sdružené instance pro serverové vykreslování ke snížení režie. • Zaznamenávání chyb: Implementujte komplexní zpracování chyb a zaznamenávání pro diagnostiku.
Zachovává vzorce, styly, sloučené oblasti a metadata sešitu.
| Problém | Rozlišení |
|---|---|
| Soubor nebyl nalezen | Ověřte, že cesta k vstupnímu souboru je správná a přístupná |
| Nepodporovaný formát souboru | Ujistěte se, že formát souboru je podporován konvertorem |
| Očekávaný obrázek nebyl vygenerován | Zkontrolujte syntaxi zástupného znaku a ověřte, že výstupní adresář existuje |
| Nesprávné názvy souborů | Ověřte SheetIndexOffset a SheetIndexPrefix nastavení |
| Chybějící stránky | Zkontrolovat SplitPartIndexOffset a ujistěte se, že jsou všechny stránky vykresleny |
| Nízká kvalita obrazu | Zvyšte DPI/rozlišení v ImageOrPrintOptions |
| Písma se zobrazují odlišně | Nainstalujte požadovaná písma na server nebo nakonfigurujte náhradu písem |
Často kladené otázky
Co je Aspose.Cells Image Converter pro .NET? Zaměřený nástroj pro programatické převádění tabulek Excel na obrázky v aplikacích .NET.
Jak se liší od Aspose.Cells pro .NET? Aspose.Cells for .NET is a full-featured API, while the Image Converter plugin is tailored for fast and accurate image conversion with streamlined APIs.
Jaké souborové formáty jsou podporovány? Podporuje XLS, XLSX, XLSM, XLTX, XLTM, XLSB, CSV, TSV, HTML, ODS a další.
Mohu přizpůsobit generování obrázků? Ano, pomocí ImageOrPrintOptions class k definování typu výstupu, rozlišení, komprese a dalších.
Jak mohu převést více listů na samostatné obrázky? Použijte LowCodeSaveOptionsProviderOfPlaceHolders s vzory zástupných znaků k automatickému generování jedinečných názvů souborů pro každý list.
Lze přizpůsobit generování JSON? Ano. Použijte JsonSaveOptions pro nastavení odsazení, kódování a formátování..?
${SheetIndex}: Aktuální číslo listu${SheetIndexPrefix}: Vlastní předpona pro listy (např. “S”, “Sheet”)${SplitPartIndex}: Číslo stránky pro velké listy rozdělené do více obrázků
Mohu začít číslování listů od 1 místo 0? Ano, nastavte SheetIndexOffset = 1 k použití indexování od jedné.
Vlastní mapování JSON schématu
Mapovat rozsahy na pole JSON nebo objekty.
ImageConverter: Statická třída poskytující zjednodušené konverzní metodyLowCodeLoadOptions: Konfigurace pro načítání souborů ExcelLowCodeImageSaveOptions: Konfigurace pro výstup obrázkůImageOrPrintOptions: Podrobné nastavení vykreslování obrázkůLowCodeSaveOptionsProviderOfPlaceHolders: Dynamické pojmenování souborů s zástupci
Webová integrace: Vypisujte JSON přímo do HTTP odpovědních streamů ve webových aplikacích.
InputFile: Cesta k zdrojovému souboru ExcelImageOptions: Možnosti vykreslování specifické pro obrázekImageType: Výstupní formát (PNG, JPEG, TIFF, BMP, EMF, GIF)SheetIndexOffset: Počáteční číslo pro indexování listůSheetIndexPrefix: Řetězec předpony pro čísla listůSplitPartIndexOffset: Počáteční číslo pro indexování stránek/rozdělení
JsonConverter.Process(string, string): Jednoduchá konverze souboru na soubor
${SheetIndex}: Index listu (s aplikovaným posunem)${SheetIndexPrefix}: Vlastní předpona listu${SplitPartIndex}: Index stránky/rozdělení (s aplikovaným posunem)