Převod snímků PowerPoint do PNG v C++
Přehled
Tento článek vysvětluje, jak převést prezentace PowerPoint do PNG obrázků pomocí Aspose.Slides. Ukazuje, jak načíst soubory prezentací ve formátech jako PPT, PPTX a ODP, vykreslit snímky jako obrázky a uložit výsledky ve formátu PNG.
Článek také demonstruje, jak přizpůsobit generované PNG obrázky nastavením hodnot měřítka nebo zadáním požadované šířky a výšky.
Převod PowerPointu do PNG
Proveďte následující kroky:
- Vytvořte instanci třídy Presentation.
- Získejte objekt snímku z kolekce Presentation::get_Slides() pod rozhraním ISlide.
- Použijte metodu ISlide::GetImage() k získání miniatury pro každý snímek.
- Použijte metodu IImage::Save(String, ImageFormatPtr k uložení miniatury snímku do formátu PNG.
Tento C++ kód ukazuje, jak převést prezentaci PowerPoint do PNG:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
for (int32_t index = 0; index < pres->get_Slides()->get_Count(); index++)
{
auto slide = pres->get_Slides()->idx_get(index);
auto fileName = String::Format(u"slide_{0}.png", index);
slide->GetImage()->Save(fileName, ImageFormat::Png);
}
Převod PowerPointu do PNG s vlastním měřítkem
Pokud chcete získat PNG soubory s určitým měřítkem, můžete nastavit hodnoty pro desiredX a desiredY, které určují rozměry výsledné miniatury.
Tento kód v C++ demonstruje popsanou operaci:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
float scaleX = 2.f;
float scaleY = 2.f;
for (int32_t index = 0; index < pres->get_Slides()->get_Count(); index++)
{
auto slide = pres->get_Slides()->idx_get(index);
auto fileName = String::Format(u"slide_{0}.png", index);
slide->GetImage(scaleX, scaleY)->Save(fileName, ImageFormat::Png);
}
Převod PowerPointu do PNG s vlastní velikostí
Pokud chcete získat PNG soubory s určitou velikostí, můžete předat preferované argumenty width a height pro ImageSize.
Tento kód ukazuje, jak převést PowerPoint do PNG při zadání velikosti obrázků:
auto pres = System::MakeObject<Presentation>(u"pres.pptx");
Size size(960, 720);
for (int32_t index = 0; index < pres->get_Slides()->get_Count(); index++)
{
auto slide = pres->get_Slides()->idx_get(index);
auto fileName = String::Format(u"slide_{0}.png", index);
slide->GetImage(size)->Save(fileName, ImageFormat::Png);
}
Často kladené otázky
Jak mohu exportovat pouze konkrétní tvar (např. graf nebo obrázek) místo celého snímku?
Aspose.Slides podporuje generating thumbnails for individual shapes; můžete vykreslit tvar do PNG obrázku.
Je na serveru podporován paralelní převod?
Ano, ale don’t share jednu instanci prezentace napříč vlákny. Použijte samostatnou instanci pro každé vlákno nebo proces.
Jaká jsou omezení zkušební verze při exportu do PNG?
Režim hodnocení přidává vodoznak do výstupních obrázků a uplatňuje other restrictions až do aplikace licence.