PPT und PPTX in JPG konvertieren in PHP

Über die PowerPoint-zu-JPG-Konvertierung

Mit Aspose.Slides API können Sie PowerPoint‑PPT‑ oder PPTX‑Präsentationen in JPG‑Bilder konvertieren. Es ist auch möglich, PPT/PPTX in JPEG, PNG oder SVG zu konvertieren. Mit diesen Funktionen ist es einfach, Ihren eigenen Präsentations‑Viewer zu implementieren und das Miniaturbild für jede Folie zu erstellen. Dies kann nützlich sein, wenn Sie die Folien vor dem Kopieren schützen oder die Präsentation im Nur‑Lese‑Modus demonstrieren möchten. Aspose.Slides ermöglicht die Konvertierung der gesamten Präsentation oder einer bestimmten Folie in Bildformate.

[todo:image_alt_text

PowerPoint PPT/PPTX zu JPG konvertieren

Hier sind die Schritte, um PPT/PPTX in JPG zu konvertieren:

  1. Erstellen Sie eine Instanz des Typs Presentation.
  2. Holen Sie das Folienobjekt des Typs Slide aus der Sammlung Presentation::getSlides().
  3. Erstellen Sie das Miniaturbild jeder Folie und konvertieren Sie es anschließend in JPG. Die Methode Slide::getImage(float scaleX, float scaleY) wird verwendet, um ein Miniaturbild einer Folie zu erhalten. Die Methode getImage muss vom gewünschten Slide‑Objekt aufgerufen werden; die Skalierungsfaktoren des resultierenden Miniaturbilds werden dabei an die Methode übergeben.
  4. Nachdem Sie das Folien‑Miniaturbild erhalten haben, rufen Sie die Methode [IImage::save(String formatName, int imageFormat)](https://reference.aspose.com/slides/php-java/aspose.slides/IImage#save(String formatName, int imageFormat)) vom Miniaturbild‑Objekt auf. Übergeben Sie dabei den resultierenden Dateinamen und das Bildformat.
  $pres = new Presentation("PowerPoint-Presentation.pptx");
  try {
    foreach($pres->getSlides() as $sld) {
      # Erstellt ein Bild in voller Größe
      $slideImage = $sld->getImage(1.0, 1.0);
      # Speichert das Bild auf dem Datenträger im JPEG-Format
      try {
        $slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
      } finally {
        if (!java_is_null($slideImage)) {
          $slideImage->dispose();
        }
      }
    }
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

PowerPoint PPT/PPTX zu JPG mit benutzerdefinierten Abmessungen konvertieren

Um die Abmessungen des resultierenden Miniaturbilds und JPG‑Bildes zu ändern, können Sie die Werte ScaleX und ScaleY setzen, indem Sie sie an die Methoden Slide::getImage(float scaleX, float scaleY) übergeben:

  $pres = new Presentation("PowerPoint-Presentation.pptx");
  try {
    # Definiert die Abmessungen
    $desiredX = 1200;
    $desiredY = 800;
    # Ermittelt skalierte Werte von X und Y
    $ScaleX = 1.0 / $pres->getSlideSize()->getSize()->getWidth() * $desiredX;
    $ScaleY = 1.0 / $pres->getSlideSize()->getSize()->getHeight() * $desiredY;
    foreach($pres->getSlides() as $sld) {
      # Erstellt ein Bild in voller Größe
      $slideImage = $sld->getImage($ScaleX, $ScaleY);
      # Speichert das Bild auf dem Datenträger im JPEG-Format
      try {
        $slideImage->save(String->format("Slide_%d.jpg", $sld->getSlideNumber()), ImageFormat::Jpeg);
      } finally {
        if (!java_is_null($slideImage)) {
          $slideImage->dispose();
        }
      }
    }
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Kommentare beim Speichern von Folien als Bilder rendern

Aspose.Slides für PHP via Java bietet eine Funktion, mit der Sie Kommentare in den Folien einer Präsentation rendern können, wenn Sie diese Folien in Bilder konvertieren. Dieser PHP‑Code demonstriert die Vorgehensweise:

  $pres = new Presentation("presentation.pptx");
  try {
    $notesOptions = new NotesCommentsLayoutingOptions();
    $notesOptions->setNotesPosition(NotesPositions::BottomTruncated);
    $opts = new RenderingOptions();
    $opts->setSlidesLayoutOptions($notesOptions);
    foreach($pres->getSlides() as $sld) {
      $slideImage = $sld->getImage($opts, new Java("java.awt.Dimension", 740, 960));
      try {
        $slideImage->save(String->format("Slide_%d.png", $sld->getSlideNumber()));
      } finally {
        if (!java_is_null($slideImage)) {
          $slideImage->dispose();
        }
      }
    }
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

FAQ

Unterstützt diese Methode Batch‑Konvertierung?
Ja, Aspose.Slides ermöglicht die Batch‑Konvertierung mehrerer Folien zu JPG in einem einzigen Vorgang.

Unterstützt die Konvertierung SmartArt, Diagramme und andere komplexe Objekte?
Ja, Aspose.Slides rendert alle Inhalte, einschließlich SmartArt, Diagrammen, Tabellen, Formen und mehr. Die Rendering‑Genauigkeit kann jedoch im Vergleich zu PowerPoint leicht variieren, insbesondere bei Verwendung benutzerdefinierter oder fehlender Schriftarten.

Gibt es Beschränkungen für die Anzahl der verarbeitbaren Folien?
Aspose.Slides selbst legt keine strikten Grenzen für die Anzahl der verarbeitbaren Folien fest. Allerdings kann bei großen Präsentationen oder hochauflösenden Bildern ein Out‑Of‑Memory‑Fehler auftreten.

Siehe auch

Weitere Optionen, um PPT/PPTX in Bilder zu konvertieren, finden Sie unter: