Konvertera PowerPoint‑bilder till PNG i C++

Översikt

Denna artikel förklarar hur du konverterar PowerPoint‑presentationer till PNG‑bilder med Aspose.Slides. Den visar hur du laddar presentationsfiler i format som PPT, PPTX och ODP, renderar bilder som bilder och sparar resultaten i PNG‑format.

Artikeln visar även hur du anpassar de genererade PNG‑bilderna genom att ange skalvärden eller specificera önskad bredd och höjd.

Konvertera PowerPoint till PNG

Gå igenom dessa steg:

  1. Instansiera klassen Presentation.
  2. Hämta bildobjektet från samlingen Presentation::get_Slides() under gränssnittet ISlide.
  3. Använd metoden ISlide::GetImage() för att hämta miniatyrbilden för varje bild.
  4. Använd metoden IImage::Save(String, ImageFormatPtr för att spara bildens miniatyr i PNG‑format.

Denna C++‑kod visar hur du konverterar en PowerPoint‑presentation till 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);
}

Konvertera PowerPoint till PNG med anpassade dimensioner

Om du vill få PNG‑filer med en viss skala kan du ange värdena för desiredX och desiredY, vilka bestämmer dimensionerna på den resulterande miniatyrbilden.

Denna kod i C++ demonstrerar den beskrivna operationen:

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);
}

Konvertera PowerPoint till PNG med anpassad storlek

Om du vill få PNG‑filer med en viss storlek kan du skicka dina önskade width‑ och height‑argument för ImageSize.

Denna kod visar hur du konverterar en PowerPoint till PNG medan du specificerar storleken på bilderna:

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);
}

Vanliga frågor

Hur kan jag exportera endast en specifik form (t.ex. diagram eller bild) istället för hela bilden?

Aspose.Slides stöder generering av miniatyrbilder för enskilda former; du kan rendera en form till en PNG‑bild.

Stöds parallell konvertering på en server?

Ja, men dela inte en enskild presentationsinstans mellan trådar. Använd en separat instans per tråd eller process.

Vilka är begränsningarna i provversionen vid export till PNG?

Utvärderingsläget lägger till ett vattenmärke på utskriftsbilder och upprätthåller andra begränsningar tills en licens har tillämpats.