Presentaties maken in PHP

Overzicht

Dit artikel toont hoe u een presentatie maakt in Aspose.Slides, een tekstvak toevoegt aan de eerste dia en het resultaat opslaat als een bestand. Het laat tevens zien hoe u een lege presentatie maakt en opslaat, en hoe u een bestaande presentatie in een ondersteund formaat opent en opslaat in een ander formaat. Een korte FAQ aan het einde beantwoordt veelgestelde vragen over formaten, sjablonen, dia‑afmetingen, eenheden, geheugengebruik, threading, licenties, digitale handtekeningen en VBA‑ondersteuning.

Voordat u begint, installeert u Aspose.Slides voor PHP via Java met Composer en start u de PHP/Java Bridge in Apache Tomcat. Zie Installation voor de volledige installatie. De voorbeelden hieronder gaan ervan uit dat Tomcat draait op localhost:8080 en dat de Composer vendor‑map zich naast het script bevindt.

PowerPoint‑presentatie maken

Om een presentatie te maken en een tekstvak op de eerste dia te plaatsen, volgt u deze stappen:

  1. Maak een instantie van de Presentation klasse. Een nieuwe presentatie bevat al één lege dia.
  2. Haal die dia op uit de collectie die wordt geretourneerd door Presentation::getSlides, met index 0.
  3. Voeg een rechthoek toe met de ShapeCollection::addAutoShape methode en stel de tekst in met TextFrame::setText.
  4. Sla de presentatie op als een PPTX‑bestand met de Presentation::save methode.
<?php
require_once("http://localhost:8080/JavaBridge/java/Java.inc");
require_once(__DIR__ . "/vendor/aspose/slides/nl/lib/aspose.slides.php");

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
use aspose\slides\ShapeType;

$presentation = new Presentation();
try {
    $slide = $presentation->getSlides()->get_Item(0);
    $shape = $slide->getShapes()->addAutoShape(ShapeType::Rectangle, 50, 50, 400, 100);
    $shape->getTextFrame()->setText("Hello, Aspose.Slides!");
    $presentation->save(__DIR__ . "/hello.pptx", SaveFormat::Pptx);
} finally {
    $presentation->dispose();
}

De twee require_once‑regels laden de PHP/Java Bridge‑client van Tomcat en de Aspose.Slides‑klassen uit het Composer‑pakket. De linkerbovenhoek van de rechthoek bevindt zich 50 punten van de linkerrand en 50 punten van de bovenzijde van de dia, en de rechthoek is 400 punten breed en 100 punten hoog. Het opgeslagen bestand bevat één dia met die rechthoek en tekst. Zonder licentie voegt Aspose.Slides ook een evaluatiewatermerk toe aan elke dia die het opslaat; zie Licensing.

Presentatie maken en opslaan

Om een lege presentatie te maken en op te slaan, maakt u een instantie van de Presentation klasse en slaat u deze op in een willekeurig formaat van de SaveFormat enumeratie. Het resultaat is een presentatie met één lege dia.

<?php
require_once("http://localhost:8080/JavaBridge/java/Java.inc");
require_once(__DIR__ . "/vendor/aspose/slides/nl/lib/aspose.slides.php");

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation();
try {
    $presentation->save(__DIR__ . "/OutputPresentation.pptx", SaveFormat::Pptx);
} finally {
    $presentation->dispose();
}

Presentatie openen en opslaan

Om een presentatie van het ene formaat naar het andere te converteren, opent u deze door het pad door te geven aan de Presentation constructor, en slaat u deze vervolgens op in het doel‑formaat. Aspose.Slides detecteert het invoerformaat, zoals PPT, PPTX of ODP, aan de hand van het bestand zelf.

Het voorbeeld hieronder verwacht een OpenDocument‑presentatie met de naam Sample.odp naast het script en slaat deze op als PPTX.

<?php
require_once("http://localhost:8080/JavaBridge/java/Java.inc");
require_once(__DIR__ . "/vendor/aspose/slides/nl/lib/aspose.slides.php");

use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$presentation = new Presentation(__DIR__ . "/Sample.odp");
try {
    $presentation->save(__DIR__ . "/OutputPresentation.pptx", SaveFormat::Pptx);
} finally {
    $presentation->dispose();
}

FAQ

In welke formaten kan ik een nieuwe presentatie opslaan?

U kunt opslaan naar PPTX, PPT en ODP, en exporteren naar PDF, XPS, HTML, SVG en afbeeldingen, onder andere.

Kan ik beginnen vanuit een sjabloon (POTX/POTM) en opslaan als een reguliere PPTX?

Ja. Laad het sjabloon en sla het op in het gewenste formaat; POTX/POTM/PPTM en soortgelijke formaten worden ondersteund.

Hoe beheer ik de dia‑grootte/verhoudingsratio bij het maken van een presentatie?

Stel de dia‑grootte in (inclusief presets zoals 4:3 en 16:9 of aangepaste afmetingen) en kies hoe de inhoud moet worden geschaald.

In welke eenheden worden afmetingen en coördinaten gemeten?

In punten: 1 inch is gelijk aan 72 eenheden.

Hoe ga ik om met zeer grote presentaties (met veel mediabestanden) om het geheugenverbruik te verminderen?

Gebruik BLOB-beheerstrategieën, beperk opslag in het geheugen door tijdelijke bestanden te gebruiken, en geef de voorkeur aan bestandsgebaseerde workflows boven puur in‑memory streams.

Kan ik presentaties parallel maken/opslaan?

U kunt niet tegelijk op dezelfde Presentation instantie werken vanuit meerdere threads. Gebruik afzonderlijke, geïsoleerde instanties per thread of proces.

Hoe verwijder ik het proef‑watermerk en de beperkingen?

Pas een licentie toe één keer per proces. Het licentie‑XML‑bestand moet ongewijzigd blijven, en de licentie‑instelling moet gesynchroniseerd worden als er meerdere threads betrokken zijn.

Kan ik de PPTX die ik maak digitaal ondertekenen?

Ja. Digitale handtekeningen (toevoegen en verifiëren) worden ondersteund voor presentaties.

Worden macro’s (VBA) ondersteund in gemaakte presentaties?

Ja. U kunt VBA‑projecten maken/bewerken en macro‑ingeschakelde bestanden zoals PPTM/PPSM opslaan.