Upravte prezentaci PPT/PPTX pomocí .NET API

Nejběžnější a nejrozšířenější formáty prezentačních souborů jsou PPT, PPTX a ODP. Slavný Microsoft PowerPoint, OpenOffice Impress a Apple Keynote tyto formáty podporují a běžně tyto formáty používáme k vytváření velkolepých prezentací. Jako vývojář můžeme upravovat prezentace v našich aplikacích programově. V tomto článku probereme, jak upravit prezentace PPT/PPTX v C# pomocí rozhraní .NET API pro úpravy prezentací.

Následují témata stručně probíraná v tomto článku:

.NET API pro úpravy a automatizaci prezentací

Nyní budeme používat GroupDocs.Editor for .NET v níže uvedených příkladech C#. Jedná se o rozhraní API pro úpravy prezentací a umožňuje vývojářům načítat, upravovat a ukládat upravené prezentace v jiných formátech, jako je PPT, PPTX, PDF. Kromě prezentačních formátů rozhraní API podporuje úpravy textových dokumentů, tabulek, formátů HTML, XML, JSON, TXT, TSV a CSV.

Stáhněte si DLL nebo instalační program MSI z části ke stažení nebo nainstalujte API do své aplikace .NET prostřednictvím NuGet.

PM> Install-Package GroupDocs.Editor

Upravit prezentace PPTX/PPTX v C#

Po nastavení rozhraní API můžete rychle přejít k úpravám snímků prezentace. Následující kroky vám umožní upravit prezentaci PPT/PPTX a dalších podporovaných formátů.

  • Načtěte prezentaci.
  • Upravte pomocí dostupných možností.
  • Uložte upravenou prezentaci.

Načtěte prezentaci PPT/PPTX

Nejprve načtěte prezentaci zadáním cesty k souboru prezentace a hesla, pokud je prezentace chráněna.

// Load Presentation
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
    // Load Presentation
    Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
    loadOptions.Password = "P@$$w0Rd";
}

Upravte snímky prezentace PPT/PPTX

Po načtení můžete načtenou prezentaci upravit podle potřeby. Zde nahrazuji všechny výskyty slova „dokumenty“ výrazem „prezentace“ v prezentaci PPTX pomocí níže uvedeného kódu C#.

// Edit Presentation
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
    Options.PresentationEditOptions editOptions = new PresentationEditOptions();
    editOptions.SlideNumber = 0;            // 1st slide
    editOptions.ShowHiddenSlides = true;

    using (EditableDocument beforeEdit = editor.Edit(editOptions))
    {
        string originalContent = beforeEdit.GetContent();
        List<IHtmlResource> allResources = beforeEdit.AllResources;
        string editedContent = originalContent.Replace("documents", "presentation");       
    }
}

Uložte upravenou prezentaci PowerPoint pomocí možností

A konečně, při ukládání upraveného obsahu prezentace můžete dále nastavit různé možnosti. Tyto možnosti zahrnují; nastavit heslo, nastavení výstupního formátu. Výše uvedené možnosti nastavím v níže uvedeném kódu a upravenou prezentaci uložím jako zaheslovaný soubor PPTX.

// Save Presentation
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
    Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
    saveOptions.Password = "new_pa$$word";

    using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
    {
        editor.Save(afterEdit, outputStream, saveOptions);
    }
}

Kompletní kód

Pro usnadnění je zde kompletní příklad C#, který je vysvětlen výše a který upraví prezentaci v PowerPointu a poté ji uloží ve formátu PPTX.

// Upravujte prezentace PPT/PPTX v C# pomocí rozhraní API pro úpravy prezentací GroupDocs a automatizace
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
    // Načíst prezentaci
    Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
    loadOptions.Password = "P@$$w0Rd";

    // Upravit prezentaci
    using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
    {
        Options.PresentationEditOptions editOptions = new PresentationEditOptions();
        editOptions.SlideNumber = 0;            // 1st slide
        editOptions.ShowHiddenSlides = true;

        using (EditableDocument beforeEdit = editor.Edit(editOptions))
        {
            string originalContent = beforeEdit.GetContent();
            List<IHtmlResource> allResources = beforeEdit.AllResources;
            string editedContent = originalContent.Replace("documents", "presentation");
            
            // Uložit prezentaci
            using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
            {
                Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
                saveOptions.Password = "new_pa$$word";

                using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
                {
                    editor.Save(afterEdit, outputStream, saveOptions);
                }
            }
        }
    }
}

Následuje výstupní prezentace, ve které jsou všechny výskyty nahrazeny pomocí výše uvedeného kódu.

upravená pptx prezentace pomocí editačního API

Výstupní prezentace – výskyty „dokumentů“ jsou nahrazeny výrazem „prezentace“

Závěr

Na závěr jsme diskutovali o úpravách snímků prezentací v jazyce C# pomocí rozhraní API pro úpravy prezentací pro aplikace .NET. Pro vizuální úpravy prezentací můžete použít API s WYSIWYG editory. Poté můžete přejít k vytvoření vlastního editoru prezentací. Podobně můžete také integrovat funkci úprav do vaší aplikace .NET.

Další podrobnosti, možnosti a příklady naleznete v úložišti documentation a GitHub. Pro další dotazy kontaktujte podporu na fóru.

Související články