Jak zobrazit náhled souborů Excel pomocí GroupDocs.Parser v Javě

Pokud hledáte jak zobrazit náhled Excel tabulek programově, jste na správném místě. V tomto průvodci si ukážeme, jak vytvořit náhledy obrázků (PNG) z .xlsx sešitů pomocí GroupDocs.Parser pro Java — ideální pro rychlé miniatury, sdílení snímků nebo vytvoření funkce náhledu dokumentů ve vaší aplikaci.

Rychlé odpovědi

  • Co znamená „preview Excel“? Generování souborů obrázků (např. PNG), které představují každou stránku listu.
  • Jaký formát je doporučen? PNG poskytuje bezztrátovou kvalitu a dobře se hodí pro webové miniatury.
  • Potřebuji licenci? Bezplatná zkušební verze funguje pro vývoj; pro produkci je vyžadována komerční licence.
  • Mohu změnit rozlišení obrázku? Ano — upravte DPI v PreviewOptions.
  • Je možné zobrazit náhled i jiných formátů? GroupDocs.Parser také podporuje PDF, Word a mnoho typů obrázků.

Co je „jak zobrazit náhled Excel“ s GroupDocs.Parser?

GroupDocs.Parser čte sešity Excel, vykresluje každý list jako vizuální stránku a umožňuje vám streamovat tyto stránky do souborů obrázků. Tím se eliminuje potřeba Office interop nebo konvertorů třetích stran.

Proč použít GroupDocs.Parser pro náhledy Excelu?

  • Není vyžadována instalace Office – běží na jakémkoli serverovém prostředí Java.
  • Podporuje velké soubory – streamuje stránky po jedné, udržuje nízkou spotřebu paměti.
  • Výstup ve vysoké kvalitě – kontrola nad DPI, formátem a možnostmi vykreslování.
  • Flexibilita napříč formáty – stejné API funguje pro PDF, Word dokumenty a další.

Požadavky

  • Java Development Kit (8 +).
  • IDE jako IntelliJ IDEA nebo Eclipse.
  • GroupDocs.Parser for Java SDK – stáhněte z zde.
  • Ukázkový soubor Excel (.xlsx), který chcete zobrazit.
  • Maven nebo Gradle (volitelné) pro správu závislostí.

Import balíčků

Tyto importy vám poskytují přístup k parseru, možnostem náhledu a utilitám pro práci se streamy.

import com.groupdocs.parser.Parser;
import com.groupdocs.parser.options.PreviewOptions;
import com.groupdocs.parser.options.PreviewFormats;
import com.groupdocs.parser.options.ICreatePageStream;
import com.groupdocs.parser.options.IPreviewPageRender;
import com.groupdocs.parser.results.PageRenderInfo;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.IOException;

Průvodce krok za krokem pro generování náhledů stránek tabulky

Krok 1: Inicializace instance Parseru

Vytvořte objekt Parser, který ukazuje na váš sešit Excel. Blok try‑with‑resources zajistí automatické uzavření parseru.

try (Parser parser = new Parser("path/to/your/sample.xlsx")) {
    // Your subsequent code will go here
}

Tip: Použijte absolutní cestu nebo nakonfigurujte složku zdrojů, abyste se vyhnuli FileNotFoundException.

Krok 2: Připravte možnosti náhledu

Definujte, jak bude každá stránka uložena. Implementace ICreatePageStream vrací nový FileOutputStream pro každou stránku listu.

PreviewOptions previewOptions = new PreviewOptions(new ICreatePageStream() {
    @Override
    public OutputStream createPageStream(int pageNumber) {
        try {
            String outputPath = getOutputPath(pageNumber); // define this method later
            return new FileOutputStream(outputPath);
        } catch (IOException ex) {
            throw new RuntimeException("Error creating output stream", ex);
        }
    }
});

Tento krok je místem, kde převádíte xlsx na png — stream zapisuje PNG data na disk.

Krok 3: Připojte delegáta pro zachycení informací o vykreslení

Pokud potřebujete podrobnosti o každém vykresleném listu (např. rozměry, název listu), zaregistrujte zpětné volání.

final PageRenderInfo[] renderInfoHolder = {null}; // to store info

previewOptions.setPreviewPageRender(new IPreviewPageRender() {
    @Override
    public void previewPageRender(PageRenderInfo pageRenderInfo) {
        renderInfoHolder[0] = pageRenderInfo;
    }
});

Krok 4: Zadejte výstupní formát a DPI

Vyberte PNG jako formát obrázku a nastavte DPI, které vyvažuje kvalitu a velikost souboru.

previewOptions.setPreviewFormat(PreviewFormats.Png); // PNG images
previewOptions.setDpi(150); // Higher DPI for better clarity

Upravit DPI, pokud potřebujete menší miniatury (např. 96) nebo vysoce rozlišené tisky (např. 300).

Krok 5: Vygenerujte náhledy

Po nastavení všeho zavolejte generatePreview. SDK projde každý list a zavolá poskytnutý stream.

parser.generatePreview(previewOptions);

Krok 6: Definujte pomocnou metodu getOutputPath()

Tato metoda vytvoří název souboru na základě čísla stránky (listu). Klidně přizpůsobte strukturu složek.

private static String getOutputPath(int pageNumber) {
    return "output/preview_page_" + pageNumber + ".png"; // Custom path
}

Častá chyba: Zapomenutí vytvořit předem adresář output způsobí IOException. Vytvořte jej programově nebo se ujistěte, že existuje.

Kompletní funkční příklad (zjednodušený)

Níže je kompaktní verze, která spojuje všechny části dohromady. Ukazuje workflow create excel page preview od začátku do konce.

try (Parser parser = new Parser("path/to/your/sample.xlsx")) {
    final PageRenderInfo[] renderInfoHolder = {null};

    PreviewOptions options = new PreviewOptions(new ICreatePageStream() {
        @Override
        public OutputStream createPageStream(int pageNumber) {
            try {
                return new FileOutputStream(getOutputPath(pageNumber));
            } catch (IOException e) {
                throw new RuntimeException(e);
            }
        }
    });

    options.setPreviewPageRender(pageRenderInfo -> {
        renderInfoHolder[0] = pageRenderInfo;
    });
    options.setPreviewFormat(PreviewFormats.Png);
    options.setDpi(150);

    parser.generatePreview(options);
} catch (Exception e) {
    e.printStackTrace();
}

Spusťte tento úryvek a v adresáři output najdete sérii souborů preview_page_1.png, preview_page_2.png, … — každý představuje list z původního sešitu Excel.

Časté problémy a řešení

ProblémPříčinaŘešení
Žádné obrázky nebyly vygeneroványgetOutputPath vrací neplatný adresářUjistěte se, že cílová složka existuje, nebo ji vytvořte pomocí new File("output").mkdirs();
Chyba nedostatku paměti u velkých souborůNačítání celého sešitu najednouPoužijte streamingový přístup (jak je ukázáno) a zpracovávejte stránky po jedné
Nesprávné DPIsetDpi nebylo zavoláno nebo je nastaveno na výchozí (96)Zavolejte previewOptions.setDpi(vámiPožadovanáHodnota); před generatePreview
Nepodporovaný formátPokus o náhled poškozeného .xlsxOvěřte soubor v Excelu nebo použijte Parser.isSupported před zpracováním

Často kladené otázky

Q: Mohu generovat náhledy pro PDF a obrázky pomocí GroupDocs.Parser?
A: Ano, stejné API funguje pro PDF, Word dokumenty a mnoho formátů obrázků.

Q: Jak změním výstupní formát obrázku?
A: Zavolejte previewOptions.setPreviewFormat(PreviewFormats.Jpeg) (nebo Gif, Bmp atd.).

Q: Je výkon problém u velmi velkých sešitů?
A: SDK streamuje stránky, což udržuje nízkou spotřebu paměti. U obrovských souborů zvažte zpracování ve paralelních dávkách.

Q: Jak mohu ošetřit chyby během generování náhledu?
A: Zabalte kód do bloků try‑catch (jak je ukázáno) a zaznamenejte podrobnosti výjimky. Ujistěte se, že streamy jsou uzavřeny v bloku finally, pokud nepoužíváte try‑with‑resources.

Q: Vyžaduje knihovna instalaci Microsoft Office?
A: Ne. GroupDocs.Parser je čistě Java řešení a funguje na jakékoli platformě, která podporuje Java 8+.

Závěr

Nyní máte kompletní, připravenou metodu pro jak zobrazit náhled Excel sešitů a převést xlsx na png pomocí GroupDocs.Parser. Přizpůsobte DPI, výstupní složku nebo formát obrázku podle potřeb vašeho projektu a integrujte tento úryvek do větších pracovních postupů správy dokumentů.

Jste připraveni na další krok? Prozkoumejte oficiální dokumentaci pro pokročilé možnosti vykreslování, soubory chráněné heslem a techniky dávkového zpracování.


Poslední aktualizace: 2026-02-06
Testováno s: GroupDocs.Parser 23.11 (nejnovější v době psaní)
Autor: GroupDocs