PowerPoint in PDF umwandeln in C++

Übersicht

Das Umwandeln von PowerPoint-Dokumenten in PDF-Format bietet mehrere Vorteile, einschließlich der Sicherstellung der Kompatibilität über verschiedene Geräte hinweg sowie der Erhaltung des Layouts und der Formatierung Ihrer Präsentation. Dieser Artikel zeigt Ihnen, wie Sie Präsentationen in PDF-Dokumente umwandeln, verschiedene Optionen zur Steuerung der Bildqualität verwenden, versteckte Folien einbeziehen, PDF-Dokumente passwortschützen, Schriftartsubstitutionen erkennen, Folien zur Umwandlung auswählen und Compliance-Standards auf Ausgabedokumente anwenden.

PowerPoint in PDF Umwandlungen

Mit Aspose.Slides können Sie Präsentationen in diesen Formaten in PDF umwandeln:

  • PPT
  • PPTX
  • ODP

Um eine Präsentation in PDF umzuwandeln, müssen Sie einfach den Dateinamen als Argument in der Presentation Klasse übergeben und dann die Präsentation mit der Save Methode als PDF speichern. Die Presentation Klasse stellt die Save Methode bereit, die typischerweise verwendet wird, um eine Präsentation in PDF umzuwandeln.

Aspose.Slides ermöglicht es Ihnen, zu konvertieren:

  • eine gesamte Präsentation in PDF
  • spezifische Folien in einer Präsentation in PDF
  • eine Präsentation

Aspose.Slides exportiert Präsentationen in PDF auf eine Weise, die den Inhalt der resultierenden PDFs sehr ähnlich den Originalpräsentationen macht. Diese bekannten Elemente und Attribute werden oft korrekt bei der Umwandlung von Präsentation in PDF gerendert:

  • Bilder
  • Textfelder und andere Formen
  • Texte und deren Formatierung
  • Absätze und deren Formatierung
  • Hyperlinks
  • Kopf- und Fußzeilen
  • Aufzählungen
  • Tabellen

PowerPoint in PDF umwandeln

Der standardmäßige PowerPoint-PDF-Umwandlungsprozess wird mit Standardoptionen durchgeführt. In diesem Fall versucht Aspose.Slides, die bereitgestellte Präsentation mit optimalen Einstellungen in PDF mit maximaler Qualität umzuwandeln.

Schritte: PowerPoint in PDF umwandeln in C++ | Schritte: PPT in PDF umwandeln in C++ | Schritte: PPTX in PDF umwandeln in C++ | Schritte: ODP in PDF umwandeln in C++

Dieser C++-Code zeigt Ihnen, wie Sie eine PowerPoint in PDF umwandeln:

// Instanziiert eine Presentation-Klasse, die eine PowerPoint-Datei repräsentiert
auto presentation = System::MakeObject<Presentation>(u"PowerPoint.ppt");

// Speichert die Präsentation als PDF
presentation->Save(u"PPT-to-PDF.pdf", SaveFormat::Pdf);

PowerPoint in PDF mit Optionen umwandeln

Aspose.Slides bietet benutzerdefinierte Optionen – Eigenschaften unter der PdfOptions Klasse – die es Ihnen ermöglichen, die PDF (die aus dem Umwandlungsprozess resultiert) anzupassen, die PDF mit einem Passwort zu schützen oder sogar anzugeben, wie der Umwandlungsprozess ablaufen soll.

PowerPoint in PDF mit benutzerdefinierten Optionen umwandeln

Mit benutzerdefinierten Umwandlungsoptionen können Sie Ihre bevorzugte Qualitätseinstellung für Rasterbilder festlegen, angeben, wie Metadateien behandelt werden sollen, ein Komprimierungsniveau für Texte festlegen, DPI für Bilder festlegen usw.

Das folgende Codebeispiel demonstriert einen Vorgang, bei dem eine PowerPoint-Präsentation mit mehreren benutzerdefinierten Optionen in PDF umgewandelt wird:

// Instanziiert die PdfOptions-Klasse
auto pdfOptions = System::MakeObject<PdfOptions>();

// Setzt die Qualität für JPG-Bilder
pdfOptions->set_JpegQuality(90);

// Setzt DPI für Bilder
pdfOptions->set_SufficientResolution(300);

// Setzt das Verhalten für Metadateien
pdfOptions->set_SaveMetafilesAsPng(true);

// Setzt das Komprimierungsniveau für textuelle Inhalte
pdfOptions->set_TextCompression(PdfTextCompression::Flate);

// Definiert den PDF-Compliance-Modus
pdfOptions->set_Compliance(PdfCompliance::Pdf15);

// Instanziiert die Presentation-Klasse, die ein PowerPoint-Dokument darstellt
auto presentation = System::MakeObject<Presentation>(u"PowerPoint.pptx");

// Speichert die Präsentation als PDF-Dokument
presentation->Save(u"PowerPoint-to-PDF.pdf", SaveFormat::Pdf, pdfOptions);

presentation->Dispose();

PowerPoint in PDF mit versteckten Folien umwandeln

Wenn eine Präsentation versteckte Folien enthält, können Sie eine benutzerdefinierte Option - die ShowHiddenSlides Eigenschaft aus der PdfOptions Klasse - verwenden, um Aspose.Slides anzuweisen, die versteckten Folien als Seiten in der resultierenden PDF einzuschließen.

Dieser C++-Code zeigt Ihnen, wie Sie eine PowerPoint-Präsentation in PDF umwandeln, wobei versteckte Folien einbezogen sind:

// Instanziiert eine Presentation-Klasse, die eine PowerPoint-Datei repräsentiert
auto presentation = System::MakeObject<Presentation>(u"PowerPoint.pptx");

// Instanziiert die PdfOptions-Klasse
auto pdfOptions = System::MakeObject<PdfOptions>();

// Fügt versteckte Folien hinzu
pdfOptions->set_ShowHiddenSlides(true);

// Speichert die Präsentation als PDF
presentation->Save(u"PowerPoint-to-PDF.pdf", SaveFormat::Pdf, pdfOptions);

PowerPoint in passwortgeschützte PDF umwandeln

Dieser C++-Code zeigt Ihnen, wie Sie eine PowerPoint in eine passwortgeschützte PDF umwandeln (mit Schutzparametern aus der PdfOptions Klasse):

// Instanziiert ein Presentation-Objekt, das eine PowerPoint-Datei repräsentiert
auto presentation = System::MakeObject<Presentation>(u"PowerPoint.pptx");

/// Instanziiert die PdfOptions-Klasse
auto pdfOptions = System::MakeObject<PdfOptions>();

// Setzt das PDF-Passwort und die Zugriffsberechtigungen
pdfOptions->set_Password(u"password");
pdfOptions->set_AccessPermissions(PdfAccessPermissions::PrintDocument | PdfAccessPermissions::HighQualityPrint);

// Speichert die Präsentation als PDF
presentation->Save(u"PPTX-to-PDF.pdf", SaveFormat::Pdf, pdfOptions);

Schriftartsubstitutionen erkennen

Aspose.Slides bietet die get_WarningCallback() Methode unter der SaveOptions Klasse, um Ihnen zu ermöglichen, Schriftartsubstitutionen im Umwandlungsprozess von Präsentationen in PDF zu erkennen.

Dieser C++-Code zeigt Ihnen, wie Sie Schriftartsubstitutionen erkennen:

class FontSubstSendsWarningCallback : public Warnings::IWarningCallback
{
public:
    Warnings::ReturnAction Warning(System::SharedPtr<Warnings::IWarningInfo> warning) override;
};

Warnings::ReturnAction FontSubstSendsWarningCallback::Warning(System::SharedPtr<Warnings::IWarningInfo> warning)
{
    if (warning->get_WarningType() == Warnings::WarningType::CompatibilityIssue)
    {
        return Warnings::ReturnAction::Continue;
    }

    if (warning->get_WarningType() == Warnings::WarningType::DataLoss && warning->get_Description().StartsWith(u"Schriftart wird substituiert"))
    {
        System::Console::WriteLine(u"Schriftartsubstitution-Warnung: {0}", warning->get_Description());
    }

    return Warnings::ReturnAction::Continue;
}

und der nächste C++-Code zeigt, wie man die vorherige Klasse verwendet:

int main()
{
    System::SharedPtr<LoadOptions> loadOptions = System::MakeObject<LoadOptions>();
    System::SharedPtr<FontSubstSendsWarningCallback> warningCallback = System::MakeObject<FontSubstSendsWarningCallback>();
    loadOptions->set_WarningCallback(warningCallback);

    System::SharedPtr<Presentation> pres = System::MakeObject<Presentation>(u"pres.pptx", loadOptions);
    return 0;
}

Ausgewählte Folien in PowerPoint in PDF umwandeln

Dieser C++-Code zeigt Ihnen, wie Sie spezifische Folien in einer PowerPoint-Präsentation in PDF umwandeln:

// Instanziiert ein Presentation-Objekt, das eine PowerPoint-Datei repräsentiert
auto presentation = System::MakeObject<Presentation>(u"PowerPoint.pptx");

// Setzt ein Array von Folienpositionen
auto slides = System::MakeArray<int32_t>({1, 3});

// Speichert die Präsentation als PDF
presentation->Save(u"PPTX-to-PDF.pdf", slides, SaveFormat::Pdf);

PowerPoint in PDF mit benutzerdefinierter Foliengröße umwandeln

Dieser C++-Code zeigt Ihnen, wie Sie eine PowerPoint umwandeln, wenn ihre Foliengröße spezifiziert ist:

// Der Pfad zum Dokumentenverzeichnis.
String dataDir = GetDataPath()

// Instanziiert ein Presentation-Objekt, das eine PowerPoint-Datei darstellt 
auto presentation = System::MakeObject<Presentation>(dataDir + u"SelectedSlides.pptx");
auto auxPresentation = System::MakeObject<Presentation>();

auto slide = presentation->get_Slides()->idx_get(0);

auxPresentation->get_Slides()->InsertClone(0, slide);

// Setzt den Folientyp und die Größe 
auxPresentation->get_SlideSize()->SetSize(612.F, 792.F, SlideSizeScaleType::EnsureFit);

auto pdfOptions = System::MakeObject<PdfOptions>();
auto options = pdfOptions->get_NotesCommentsLayouting();
options->set_NotesPosition(NotesPositions::BottomFull);

auxPresentation->Save(dataDir + u"PDFnotes_out.pdf", SaveFormat::Pdf, pdfOptions);

PowerPoint in PDF im Notizen-Folien-Layout umwandeln

Dieser C++-Code zeigt Ihnen, wie Sie eine PowerPoint in PDF-Notizen umwandeln:

// Der Pfad zum Dokumentenverzeichnis.
System::String dataDir = u"";

// Instanziiert eine Presentation-Klasse, die eine PowerPoint-Datei repräsentiert
auto presentation = System::MakeObject<Presentation>(dataDir + u"NotesFile.pptx");

auto pdfOptions = System::MakeObject<PdfOptions>();
auto options = pdfOptions->get_NotesCommentsLayouting();
options->set_NotesPosition(NotesPositions::BottomFull);

// Speichert die Präsentation als PDF-Notizen
presentation->Save(dataDir + u"Pdf_Notes_out.tiff", SaveFormat::Pdf, pdfOptions);

Zugänglichkeits- und Compliance-Standards für PDF

Aspose.Slides erlaubt Ihnen die Nutzung eines Umwandlungsverfahrens, das den Web Content Accessibility Guidelines (WCAG) entspricht. Sie können ein PowerPoint-Dokument in PDF umwandeln, wobei Sie einer dieser Compliance-Standards verwenden: PDF/A1a, PDF/A1b und PDF/UA.

Dieser C++-Code demonstriert einen PowerPoint-in-PDF-Umwandlungsprozess, bei dem mehrere PDFs basierend auf verschiedenen Compliance-Standards erstellt werden:

auto pres = System::MakeObject<Presentation>(u"pres.pptx");

auto pdfOptionsA1a = System::MakeObject<PdfOptions>();
pdfOptionsA1a->set_Compliance(PdfCompliance::PdfA1a);
pres->Save(u"pres-a1a-compliance.pdf", SaveFormat::Pdf, pdfOptionsA1a);

auto pdfOptionsA1b = System::MakeObject<PdfOptions>();
pdfOptionsA1b->set_Compliance(PdfCompliance::PdfA1b);
pres->Save(u"pres-a1b-compliance.pdf", SaveFormat::Pdf, pdfOptionsA1b);

auto pdfOptionsUa = System::MakeObject<PdfOptions>();
pdfOptionsUa->set_Compliance(PdfCompliance::PdfUa);
pres->Save(u"pres-ua-compliance.pdf", SaveFormat::Pdf, pdfOptionsUa);