PPT und PPTX in PDF in PHP konvertieren [Erweiterte Funktionen enthalten]

Übersicht

Das Konvertieren von PowerPoint-Präsentationen (PPT, PPTX, ODP usw.) in das PDF-Format mit PHP bietet mehrere Vorteile, darunter die Kompatibilität über verschiedene Geräte hinweg und die Erhaltung des Layouts und der Formatierung Ihrer Präsentation. Dieser Leitfaden zeigt, wie man Präsentationen in PDF-Dokumente umwandelt, verschiedene Optionen zur Steuerung der Bildqualität nutzt, ausgeblendete Folien einschließt, PDF-Dateien mit einem Passwort schützt, Schriftartersetzungen erkennt, bestimmte Folien für die Konvertierung auswählt und Compliance-Standards auf Ausgabedokumente anwendet.

PowerPoint-zu-PDF-Konvertierungen

Um Präsentationen in die folgenden Formate in PDF zu konvertieren, können Sie Aspose.Slides verwenden:

  • PPT
  • PPTX
  • ODP

Um eine Präsentation in PDF zu konvertieren, übergeben Sie den Dateinamen als Argument an die Presentation-Klasse und speichern Sie die Präsentation anschließend mit einer save‑Methode als PDF. Die Presentation-Klasse stellt die save‑Methode bereit, die typischerweise zum Konvertieren einer Präsentation in PDF verwendet wird.

Aspose.Slides ermöglicht:

  • Gesamte Präsentationen in PDF
  • Bestimmte Folien einer Präsentation in PDF

Aspose.Slides exportiert Präsentationen nach PDF und sorgt dafür, dass die resultierenden PDFs den Originalpräsentationen eng entsprechen. Elemente und Attribute werden bei der Konvertierung genau wiedergegeben, einschließlich:

  • Bilder
  • Textfelder und Formen
  • Textformatierung
  • Absatzformatierung
  • Hyperlinks
  • Kopf- und Fußzeilen
  • Aufzählungszeichen
  • Tabellen

PowerPoint in PDF konvertieren

Der standardmäßige PowerPoint-zu-PDF-Konvertierungsprozess verwendet Standardoptionen. In diesem Fall versucht Aspose.Slides, die bereitgestellte Präsentation mit optimalen Einstellungen und maximaler Qualität in PDF zu konvertieren.

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("PowerPoint.pptx");
try {
    # Speichern Sie die Präsentation als PDF.
    $presentation->save("PPT-to-PDF.pdf", SaveFormat::Pdf);
} finally {
    $presentation->dispose();
}

PowerPoint in PDF mit Optionen konvertieren

Aspose.Slides bietet benutzerdefinierte Optionen – Eigenschaften der Klasse PdfOptions – die es Ihnen ermöglichen, das resultierende PDF anzupassen, das PDF mit einem Passwort zu schützen oder festzulegen, wie der Konvertierungsprozess ablaufen soll.

PowerPoint in PDF mit benutzerdefinierten Optionen konvertieren

Mit benutzerdefinierten Konvertierungsoptionen können Sie Ihre bevorzugte Qualitätseinstellung für Rasterbilder festlegen, bestimmen, wie Metadateien behandelt werden, ein Komprimierungsniveau für Text festlegen, DPI für Bilder konfigurieren und mehr.

# Instanziieren Sie die PdfOptions-Klasse.
$pdfOptions = new PdfOptions();

# Setzen Sie die Qualität für JPG-Bilder.
$pdfOptions->setJpegQuality(90);

# Setzen Sie die DPI für Bilder.
$pdfOptions->setSufficientResolution(300);

# Setzen Sie das Verhalten für Metadateien.
$pdfOptions->setSaveMetafilesAsPng(true);

# Setzen Sie den Textkomprimierungsgrad für Textinhalte.
$pdfOptions->setTextCompression(PdfTextCompression::Flate);

# Definieren Sie den PDF-Konformitätsmodus.
$pdfOptions->setCompliance(PdfCompliance::Pdf15);

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("PowerPoint.pptx");
try {
    # Speichern Sie die Präsentation als PDF-Dokument.
    $presentation->save("PowerPoint-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

PowerPoint in PDF mit ausgeblendeten Folien konvertieren

Enthält eine Präsentation ausgeblendete Folien, können Sie die Methode setShowHiddenSlides aus der Klasse PdfOptions verwenden, um die ausgeblendeten Folien als Seiten in das resultierende PDF einzufügen.

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("PowerPoint.pptx");
try {
    # Instanziieren Sie die PdfOptions-Klasse.
    $pdfOptions = new PdfOptions();

    # Versteckte Folien hinzufügen.
    $pdfOptions->setShowHiddenSlides(true);

    # Speichern Sie die Präsentation als PDF.
    $presentation->save("PowerPoint-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

PowerPoint in passwortgeschütztes PDF konvertieren

Dieser Code zeigt, wie man eine PowerPoint-Präsentation mit den Schutzparametern der Klasse PdfOptions in ein passwortgeschütztes PDF konvertiert:

# Instanziieren Sie die Presentation‑Klasse, die eine PowerPoint‑ oder OpenDocument‑Datei darstellt.
$presentation = new Presentation("PowerPoint.pptx");
try {
    # Instanziieren Sie die PdfOptions‑Klasse.
    $pdfOptions = new PdfOptions();

    # Setzen Sie ein PDF‑Passwort und Zugriffsberechtigungen.
    $pdfOptions->setPassword("password");
    $pdfOptions->setAccessPermissions(PdfAccessPermissions::PrintDocument | PdfAccessPermissions::HighQualityPrint);

    # Speichern Sie die Präsentation als PDF.
    $presentation->save("PPTX-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Schriftartersetzungen erkennen

Aspose.Slides stellt die Methode setWarningCallback in der Klasse PdfOptions bereit, die es Ihnen ermöglicht, während des Präsentation-zu-PDF-Konvertierungsprozesses Schriftartersetzungen zu erkennen.

Dieser Code zeigt, wie Schriftartersetzungen erkannt werden:

class FontSubstitutionHandler {
    function warning($warning)
    {
        if (java_values($warning->getWarningType()) == WarningType::DataLoss &&
        $warning->getDescription()->startsWith("Font will be substituted")) {
            echo("Font substitution warning: " . $warning->getDescription());
        }

        return ReturnAction::Continue;
    }
}

// Festlegen des Warnungs-Callbacks in den PDF-Optionen.
$pdfOptions = new PdfOptions();
$warningCallback = java_closure(new FontSubstitutionHandler(), null, java("com.aspose.slides.IWarningCallback"));
$pdfOptions->setWarningCallback($warningCallback);

// Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("sample.pptx");
try {
    // Speichern Sie die Präsentation als PDF.
    $presentation->save("output.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Ausgewählte Folien in PowerPoint in PDF konvertieren

Dieser Code zeigt, wie nur bestimmte Folien einer PowerPoint-Präsentation in PDF konvertiert werden:

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("PowerPoint.pptx");
try {
    # Array von Foliennummern festlegen.
    $slides = array(1, 3);

    # Präsentation als PDF speichern.
    $presentation->save("PPTX-to-PDF.pdf", $slides, SaveFormat::Pdf);
} finally {
    $presentation->dispose();
}

PowerPoint in PDF mit benutzerdefinierter Foliengröße konvertieren

Dieser Code zeigt, wie eine PowerPoint-Präsentation mit einer angegebenen Foliengröße in PDF konvertiert wird:

$slideWidth = 612.0;
$slideHeight = 792.0;

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("SelectedSlides.pptx");

# Erstellen Sie eine neue Präsentation mit angepasster Foliengröße.
$resizedPresentation = new Presentation();

try {
    # Setzen Sie die benutzerdefinierte Foliengröße.
    $resizedPresentation->getSlideSize()->setSize($slideWidth, $slideHeight, SlideSizeScaleType::EnsureFit);

    # Klonen Sie die erste Folie der Originalpräsentation.
    $slide = $presentation->getSlides()->get_Item(0);
    $resizedPresentation->getSlides()->insertClone(0, $slide);

    # Speichern Sie die skalierte Präsentation als PDF mit Notizen.
    $resizedPresentation->save("PDFnotes_out.pdf", SaveFormat::Pdf);
} finally {
    $resizedPresentation->dispose();
    $presentation->dispose();
}

PowerPoint in PDF im Foliennotizen‑Modus konvertieren

Dieser Code zeigt, wie eine PowerPoint-Präsentation in ein PDF konvertiert wird, das die Notizen enthält:

# Instanziieren Sie die Presentation-Klasse, die eine PowerPoint- oder OpenDocument-Datei darstellt.
$presentation = new Presentation("SelectedSlides.pptx");
try {
    # Konfigurieren Sie die PDF-Optionen mit Notizen-Layout.
    $notesOptions = new NotesCommentsLayoutingOptions();
    $notesOptions->setNotesPosition(NotesPositions::BottomFull);
    $pdfOptions = new PdfOptions();
    $pdfOptions->setSlidesLayoutOptions($notesOptions);

    # Speichern Sie die Präsentation als PDF mit Notizen.
    $presentation->save("PDF_with_notes.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Barrierefreiheit und Compliance-Standards für PDF

Aspose.Slides ermöglicht die Verwendung eines Konvertierungsverfahrens, das den Web Content Accessibility Guidelines (WCAG) entspricht. Sie können ein PowerPoint-Dokument mit einem dieser Compliance-Standards in PDF exportieren: PDF/A1a, PDF/A1b und PDF/UA.

Dieser Code demonstriert einen PowerPoint-zu-PDF-Konvertierungsprozess, der mehrere PDFs basierend auf unterschiedlichen Compliance-Standards erzeugt:

$presentation = new Presentation("pres.pptx");
try {
    $pdfOptions = new PdfOptions();

    $pdfOptions->setCompliance(PdfCompliance::PdfA1a);
    $presentation->save("pres-a1a-compliance.pdf", SaveFormat::Pdf, $pdfOptions);

    $pdfOptions->setCompliance(PdfCompliance::PdfA1b);
    $presentation->save("pres-a1b-compliance.pdf", SaveFormat::Pdf, $pdfOptions);

    $pdfOptions->setCompliance(PdfCompliance::PdfUa);
    $presentation->save("pres-ua-compliance.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

FAQ

Kann ich mehrere PowerPoint-Dateien stapelweise in PDF konvertieren?

Ja, Aspose.Slides unterstützt die Batch-Konvertierung mehrerer PPT- oder PPTX-Dateien in PDF. Sie können Ihre Dateien iterativ durchlaufen und den Konvertierungsprozess programmgesteuert anwenden.

Ist es möglich, das konvertierte PDF passwortgeschützt zu machen?

Absolut. Verwenden Sie die Klasse PdfOptions, um ein Passwort festzulegen und Zugriffsrechte während des Konvertierungsprozesses zu definieren.

Wie kann ich ausgeblendete Folien in das PDF einbeziehen?

Verwenden Sie die Methode setShowHiddenSlides in der Klasse PdfOptions, um ausgeblendete Folien in das resultierende PDF aufzunehmen.

Kann Aspose.Slides hohe Bildqualität im PDF gewährleisten?

Ja, Sie können die Bildqualität steuern, indem Sie Methoden wie setJpegQuality und setSufficientResolution in der Klasse PdfOptions verwenden, um hochwertige Bilder in Ihrem PDF sicherzustellen.

Unterstützt Aspose.Slides die PDF/A-Compliance-Standards?

Ja, Aspose.Slides ermöglicht den Export von PDFs, die verschiedenen Standards entsprechen, einschließlich PDF/A1a, PDF/A1b und PDF/UA, und stellt somit sicher, dass Ihre Dokumente den Anforderungen an Barrierefreiheit und Archivierung genügen.

Weitere Ressourcen