Μετατροπή PPT και PPTX σε PDF σε PHP [Συμπεριλαμβανομένων Προηγμένων Χαρακτηριστικών]

Επισκόπηση

Η μετατροπή παρουσιάσεων PowerPoint (PPT, PPTX, ODP κ.λπ.) σε μορφή PDF σε PHP προσφέρει αρκετά πλεονεκτήματα, όπως συμβατότητα μεταξύ διαφορετικών συσκευών και διατήρηση της διάταξης και μορφοποίησης της παρουσίασής σας. Αυτός ο οδηγός παρουσιάζει πώς να μετατρέψετε παρουσιάσεις σε έγγραφα PDF, να χρησιμοποιήσετε διάφορες επιλογές για έλεγχο της ποιότητας των εικόνων, να συμπεριλάβετε κρυφές διαφάνειες, να προστατεύσετε με κωδικό πρόσβασης τα αρχεία PDF, να εντοπίσετε αντικαταστάσεις γραμματοσειρών, να επιλέξετε συγκεκριμένες διαφάνειες για μετατροπή και να εφαρμόσετε πρότυπα συμμόρφωσης στα τελικά έγγραφα.

Μετατροπές PowerPoint σε PDF

  • PPT
  • PPTX
  • ODP

Για να μετατρέψετε μια παρουσίαση σε PDF, περάστε το όνομα του αρχείου ως όρισμα στην κλάση Presentation και στη συνέχεια αποθηκεύστε την παρουσίαση ως PDF χρησιμοποιώντας τη μέθοδο save. Η κλάση Presentation εκθέτει τη μέθοδο save που συνήθως χρησιμοποιείται για τη μετατροπή μιας παρουσίασης σε PDF.

Το Aspose.Slides σάς επιτρέπει να μετατρέψετε:

  • Ολόκληρες παρουσιάσεις σε PDF
  • Συγκεκριμένες διαφάνειες από μια παρουσίαση σε PDF

Το Aspose.Slides εξάγει παρουσιάσεις σε PDF, εξασφαλίζοντας ότι τα παραγόμενα PDFs ταιριάζουν στενά με τις αρχικές παρουσιάσεις. Τα στοιχεία και τα χαρακτηριστικά αποδίδονται ακριβώς στην μετατροπή, συμπεριλαμβανομένων:

  • Εικόνες
  • Πλαίσια κειμένου και σχήματα
  • Μορφοποίηση κειμένου
  • Μορφοποίηση παραγράφου
  • Υπερσυνδέσεις
  • Κεφαλίδες και υποσέλιδα
  • Κουκκίδες
  • Πίνακες

Μετατροπή PowerPoint σε PDF

Η τυπική διαδικασία μετατροπής PowerPoint‑σε‑PDF χρησιμοποιεί προεπιλεγμένες επιλογές. Σε αυτή την περίπτωση, το Aspose.Slides προσπαθεί να μετατρέψει την παρεχόμενη παρουσίαση σε PDF χρησιμοποιώντας βέλτιστες ρυθμίσεις στα μέγιστα επίπεδα ποιότητας.

Το παρακάτω παράδειγμα φορτώνει μια παρουσίαση και αποθηκεύει όλες τις ορατές διαφάνειες σε PDF χρησιμοποιώντας τις προεπιλεγμένες ρυθμίσεις εξαγωγής.

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

$presentation = new Presentation("PowerPoint.pptx");
try {
    $presentation->save("PPT-to-PDF.pdf", SaveFormat::Pdf);
} finally {
    $presentation->dispose();
}

Μετατροπή PowerPoint σε PDF με Επιλογές

Το Aspose.Slides παρέχει προσαρμοσμένες επιλογές—ιδιότητες στην κλάση PdfOptions—που σας επιτρέπουν να προσαρμόσετε το παραγόμενο PDF, να κλειδώσετε το PDF με κωδικό πρόσβασης ή να καθορίσετε πώς θα προχωρήσει η διαδικασία μετατροπής.

Μετατροπή PowerPoint σε PDF με Προσαρμοσμένες Επιλογές

Χρησιμοποιώντας προσαρμοσμένες επιλογές μετατροπής, μπορείτε να ορίσετε την προτιμώμενη ρύθμιση ποιότητας για raster εικόνες, να καθορίσετε πώς θα διαχειρίζονται τα metafiles, να θέσετε επίπεδο συμπίεσης για κείμενο, να διαμορφώσετε DPI για εικόνες και πολλά άλλα.

Το παρακάτω παράδειγμα εξάγει μια παρουσίαση σε PDF 1.5 με ποιότητα JPEG 90, ανάλυση εικόνας 300 DPI, metafiles αποθηκευμένα ως PNG και συμπίεση κειμένου Flate.

use aspose\slides\PdfCompliance;
use aspose\slides\PdfOptions;
use aspose\slides\PdfTextCompression;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$pdfOptions = new PdfOptions();
$pdfOptions->setJpegQuality(90);
$pdfOptions->setSufficientResolution(300);
$pdfOptions->setSaveMetafilesAsPng(true);
$pdfOptions->setTextCompression(PdfTextCompression::Flate);
$pdfOptions->setCompliance(PdfCompliance::Pdf15);

$presentation = new Presentation("PowerPoint.pptx");
try {
    $presentation->save("PowerPoint-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Διατήρηση Ενσωματωμένων Αρχείων OLE ως Συνημμένα PDF

Αν μια παρουσίαση περιέχει ενσωματωμένο βιβλίο εργασίας Excel, μπορεί να θελήσετε οι παραλήπτες του PDF να έχουν πρόσβαση στα δεδομένα του βιβλίου εργασίας καθώς και να βλέπουν τις διαφάνειες. Καλέστε setIncludeOleData με true για να διατηρήσετε τα ενσωματωμένα αρχεία OLE ως συνημμένα στο παραγόμενο PDF.

Η προεπιλεγμένη τιμή είναι false: η προεπισκόπηση ή το εικονίδιο του αντικειμένου OLE αποδίδεται στη σελίδα PDF, αλλά το ενσωματωμένο αρχείο δεν περιλαμβάνεται ως συνημμένο. Ορίζοντας την επιλογή σε true προστίθενται επίσης τα δεδομένα του αρχείου. Η προεπισκόπηση παραμένει οπτική αναπαράσταση· το συνημμένο επιτρέπει στους παραλήπτες να ανοίξουν ή να αποθηκεύσουν το ενσωματωμένο αρχείο ξεχωριστά. Το αντικείμενο OLE δεν μετατρέπεται σε διαδραστικό φύλλο Excel στη σελίδα PDF.

Το παρακάτω παράδειγμα φορτώνει μια παρουσίαση που ήδη περιέχει ενσωματωμένο βιβλίο εργασίας Excel και την εξάγει σε PDF με το βιβλίο εργασίας ως συνημμένο.

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

$pdfOptions = new PdfOptions();
$pdfOptions->setIncludeOleData(true);

$presentation = new Presentation("presentation.pptx");
try {
    $presentation->save("presentation.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Για να ελέγξετε το αποτέλεσμα:

  1. Ανοίξτε το εξαγόμενο PDF σε ένα πρόγραμμα προβολής που υποστηρίζει συνημμένα αρχεία, όπως το Adobe Acrobat Reader.
  2. Ανοίξτε το πάνελ Συνημμένα του προβολέα και εντοπίστε το ενσωματωμένο βιβλίο εργασίας.
  3. Αποθηκεύστε το συνημμένο και ανοίξτε το στο Excel για να ελέγξετε τα δεδομένα, ή ανοίξτε το απευθείας αν το πρόγραμμα το επιτρέπει. Η προεπισκόπηση στη σελίδα PDF είναι ξεχωριστή από το συνημμένο.

Μετατροπή PowerPoint σε PDF με Κρυφές Διαφάνειες

Αν μια παρουσίαση περιέχει κρυφές διαφάνειες, μπορείτε να χρησιμοποιήσετε τη μέθοδο setShowHiddenSlides από την κλάση PdfOptions για να συμπεριλάβετε τις κρυφές διαφάνειες ως σελίδες στο παραγόμενο PDF.

Το παρακάτω παράδειγμα εξάγει μια παρουσίαση σε PDF, συμπεριλαμβανομένων όλων των κρυφών διαφανειών.

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

$pdfOptions = new PdfOptions();
$pdfOptions->setShowHiddenSlides(true);

$presentation = new Presentation("PowerPoint.pptx");
try {
    $presentation->save("PowerPoint-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Μετατροπή PowerPoint σε PDF με Προστασία Κωδικού

Το παρακάτω παράδειγμα εξάγει μια παρουσίαση σε PDF που απαιτεί τον κωδικό password για άνοιγμα. Οι άδειες πρόσβασης επιτρέπουν εκτύπωση, συμπεριλαμβανομένης της εκτύπωσης υψηλής ποιότητας.

use aspose\slides\PdfAccessPermissions;
use aspose\slides\PdfOptions;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$pdfOptions = new PdfOptions();
$pdfOptions->setPassword("password");
$pdfOptions->setAccessPermissions(PdfAccessPermissions::PrintDocument | PdfAccessPermissions::HighQualityPrint);

$presentation = new Presentation("PowerPoint.pptx");
try {
    $presentation->save("PPTX-to-PDF.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Ανίχνευση Αντικατάστασης Γραμματοσειρών

Το Aspose.Slides παρέχει τη μέθοδο setWarningCallback στην κλάση PdfOptions που σας επιτρέπει να εντοπίσετε αντικαταστάσεις γραμματοσειρών κατά τη διαδικασία μετατροπής παρουσίασης‑σε‑PDF.

Το παρακάτω παράδειγμα εξάγει μια παρουσίαση σε PDF και εκτυπώνει προειδοποιήσεις αντικατάστασης γραμματοσειρών στην κονσόλα. Μια προειδοποίηση εκτυπώνεται μόνο όταν μια μη διαθέσιμη γραμματοσειρά αντικαθίσταται κατά την εξαγωγή.

use aspose\slides\PdfOptions;
use aspose\slides\Presentation;
use aspose\slides\ReturnAction;
use aspose\slides\SaveFormat;
use aspose\slides\WarningType;

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

$warningCallback = java_closure(new FontSubstitutionHandler(), null, java("com.aspose.slides.IWarningCallback"));

$pdfOptions = new PdfOptions();
$pdfOptions->setWarningCallback($warningCallback);

$presentation = new Presentation("sample.pptx");
try {
    $presentation->save("output.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Διαχείριση γραμματοσειρών χωρίς αφιερωμένο έντονο τύπο

Μια παρουσίαση μπορεί να εφαρμόσει έντονη μορφοποίηση σε κείμενο ακόμη και όταν η γραμματοσειρά της δεν έχει αφιερωμένο έντονο τύπο. Το κείμενο μπορεί να εμφανίζεται έντονο μέσω συνθετικής έντονης γραφής, η οποία πάχυνει τεχνητά τα κανονικά γλυφικά. Όταν το κείμενο φαίνεται πολύ βαρύ ή διαφέρει από την προτιμώμενη εμφάνιση στο PDF, δοκιμάστε να καλέσετε PdfOptions::setRasterizeUnsupportedFontStyles με true. Αυτή η επιλογή αποδίδει το επηρεασμένο κείμενο ως bitmap κατά την εξαγωγή PDF και μπορεί να βελτιώσει την εμφάνισή του για ορισμένες γραμματοσειρές. Η προεπιλεγμένη τιμή είναι false.

Η δείγμα παρουσίαση περιέχει δύο πλαίσια κειμένου: ένα με κανονικό κείμενο και ένα με έντονη μορφοποίηση στην ίδια γραμματοσειρά, η οποία δεν διαθέτει αφιερωμένο έντονο τύπο. Το παρακάτω παράδειγμα φορτώνει την παρουσίαση, ενεργοποιεί την rasterization των μη υποστηριζόμενων στυλ γραμματοσειράς και την εξάγει σε PDF:

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

$pdfOptions = new PdfOptions();
$pdfOptions->setRasterizeUnsupportedFontStyles(true);

$presentation = new Presentation("unsupported-bold.pptx");
try {
    $presentation->save("rasterized.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Οι παρακάτω προεπισκοπήσεις δείχνουν το αποτέλεσμα με την επιλογή απενεργοποιημένη και ενεργοποιημένη. Σε αυτό το παράδειγμα, το έντονο κείμενο έχει πιο βαριές γραμμές με την επιλογή απενεργοποιημένη. Με την επιλογή ενεργοποιημένη, οι γραμμές είναι πιο ελαφριές· το κανονικό κείμενο παραμένει αμετάβλητο. Συγκρίνετε τα αποτελέσματα πριν επιλέξετε τη ρύθμιση για την παρουσίασή σας.

Επιλογή απενεργοποιημένη (false, η προεπιλογή) Επιλογή ενεργοποιημένη (true)
PDF with unsupported font style rasterization disabled PDF with unsupported font style rasterization enabled

Σε αυτό το παράδειγμα, η ενεργοποίηση της επιλογής μετατρέπει μόνο το έντονο κείμενο σε bitmap: δεν μπορεί να επιλεγεί, αντιγραφεί ή αναζητηθεί ως κείμενο χωρίς OCR, και οι άκρες του φαίνονται πιο απαλοί σε ζουμ 800 %. Το κανονικό κείμενο παραμένει αναζητήσιμο. Με την επιλογή απενεργοποιημένη, και τα δύο κείμενα παραμένουν κείμενο.

Αυτή η επιλογή rasterizes κείμενο μορφοποιημένο ως έντονο όταν η γραμματοσειρά του δεν έχει αφιερωμένο έντονο τύπο. Η Αντικατάσταση Γραμματοσειρών επιλέγει αντ' αυτού άλλη γραμματοσειρά όταν η αρχική δεν είναι διαθέσιμη.

Μετατροπή Επιλεγμένων Διαφανειών από PowerPoint σε PDF

Το παρακάτω παράδειγμα εξάγει τις διαφάνειες 1 και 3 από μια παρουσίαση σε PDF. Οι αριθμοί διαφανειών σε αυτόν τον πίνακα είναι βάση‑1, και η εισερχόμενη παρουσίαση πρέπει να περιέχει τουλάχιστον τρεις διαφάνειες.

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

$presentation = new Presentation("PowerPoint.pptx");
try {
    $slides = array(1, 3);
    $presentation->save("PPTX-to-PDF.pdf", $slides, SaveFormat::Pdf);
} finally {
    $presentation->dispose();
}

Μετατροπή PowerPoint σε PDF με Προσαρμοσμένο Μέγεθος Διαφάνειας

Το παρακάτω παράδειγμα αντιγράφει την πρώτη διαφάνεια από μια παρουσίαση σε μια νέα παρουσίαση με μέγεθος διαφάνειας 612 × 792 points (8.5 × 11 ίντσες). Κάνει κλιμάκωση του περιεχομένου της διαφάνειας ώστε να ταιριάζει και εξάγει τη μοναδική διαφάνεια σε PDF.

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

$slideWidth = 612.0;
$slideHeight = 792.0;

$presentation = new Presentation("SelectedSlides.pptx");
$resizedPresentation = new Presentation();

try {
    $resizedPresentation->getSlideSize()->setSize($slideWidth, $slideHeight, SlideSizeScaleType::EnsureFit);
    $slide = $presentation->getSlides()->get_Item(0);
    $resizedPresentation->getSlides()->insertClone(0, $slide);

    // Αφαιρέστε την κενή διαφάνεια με την οποία δημιουργήθηκε η νέα παρουσίαση.
    $resizedPresentation->getSlides()->removeAt(1);

    $resizedPresentation->save("PDF_with_custom_slide_size.pdf", SaveFormat::Pdf);
} finally {
    $resizedPresentation->dispose();
    $presentation->dispose();
}

Μετατροπή PowerPoint σε PDF σε Προβολή Σημειώσεων Διαφάνειας

Το παρακάτω παράδειγμα εξάγει μια παρουσίαση σε PDF, τοποθετώντας τις σημειώσεις του παρουσιαστή κάθε διαφάνειας κάτω από τη διαφάνεια. Χρησιμοποιήστε μια παρουσίαση που περιέχει σημειώσεις παρουσιαστή για να δείτε το αποτέλεσμα.

use aspose\slides\NotesCommentsLayoutingOptions;
use aspose\slides\NotesPositions;
use aspose\slides\PdfOptions;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;

$notesOptions = new NotesCommentsLayoutingOptions();
$notesOptions->setNotesPosition(NotesPositions::BottomFull);

$pdfOptions = new PdfOptions();
$pdfOptions->setSlidesLayoutOptions($notesOptions);

$presentation = new Presentation("SelectedSlides.pptx");
try {
    $presentation->save("PDF_with_notes.pdf", SaveFormat::Pdf, $pdfOptions);
} finally {
    $presentation->dispose();
}

Πρότυπα Προσβασιμότητας και Συμμόρφωσης για PDF

Το Aspose.Slides σας επιτρέπει να χρησιμοποιήσετε μια διαδικασία μετατροπής που συμμορφώνεται με τις Web Content Accessibility Guidelines (WCAG). Μπορείτε να εξάγετε ένα έγγραφο PowerPoint σε PDF χρησιμοποιώντας οποιοδήποτε από αυτά τα πρότυπα συμμόρφωσης: PDF/A1a, PDF/A1b, και PDF/UA.

Αυτός ο κώδικας παρουσιάζει μια διαδικασία μετατροπής PowerPoint‑σε‑PDF που παράγει πολλαπλά PDFs με διαφορετικά πρότυπα συμμόρφωσης:

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

Σημείωση: Κατά την εξαγωγή σε PDF/UA, το Aspose.Slides αντιμετωπίζει σύνθετα γραφικά όπως SmartArt, γραφήματα και τύπους ως ένα ενιαίο σχήμα. Τα μεμονωμένα στοιχεία διαδρομής δεν διατηρούνται ως ξεχωριστό περιεχόμενο και μπορεί να χαρακτηριστούν ως τεχνητά αντικείμενα· το εναλλακτικό κείμενο παρέχεται μόνο για ολόκληρο το σχήμα.

ΣΥΧΝΕΣ ΕΡΩΤΗΣΕΙΣ

Μπορώ να μετατρέψω πολλά αρχεία PowerPoint σε PDF μαζικά;

Ναι, το Aspose.Slides υποστηρίζει την παρτίδα μετατροπής πολλαπλών αρχείων PPT ή PPTX σε PDF. Μπορείτε να επεξεργαστείτε τα αρχεία σας και να εφαρμόσετε τη διαδικασία μετατροπής προγραμματιστικά.

Μπορεί να προστατευτεί με κωδικό πρόσβασης το PDF που δημιουργείται;

Ναι. Χρησιμοποιήστε την κλάση PdfOptions για να ορίσετε έναν κωδικό πρόσβασης και να καθορίσετε άδειες πρόσβασης κατά τη διαδικασία μετατροπής.

Πώς μπορώ να συμπεριλάβω κρυφές διαφάνειες στο PDF;

Καλέστε το setShowHiddenSlides με true στην κλάση PdfOptions για να συμπεριλάβετε τις κρυφές διαφάνειες στο παραγόμενο PDF.

Μπορεί το Aspose.Slides να διατηρήσει υψηλή ποιότητα εικόνας στο PDF;

Ναι, μπορείτε να ελέγξετε την ποιότητα της εικόνας χρησιμοποιώντας μεθόδους όπως setJpegQuality και setSufficientResolution στην κλάση PdfOptions για να εξασφαλίσετε εικόνες υψηλής ποιότητας στο PDF σας.

Υποστηρίζει το Aspose.Slides πρότυπα συμμόρφωσης PDF/A;

Ναι, το Aspose.Slides σας επιτρέπει να εξάγετε PDFs που συμμορφώνονται με διάφορα πρότυπα, συμπεριλαμβανομένων PDF/A1a, PDF/A1b, και PDF/UA, εξασφαλίζοντας ότι τα έγγραφά σας πληρούν τις απαιτήσεις προσβασιμότητας και αρχειοθέτησης.

Επιπλέον Πόροι