Πρόβλημα προεπισκόπησης αντικειμένου κατά την προσθήκη OleObjectFrame
Εισαγωγή
Χρησιμοποιώντας το Aspose.Slides for Java, όταν προσθέτετε το OleObjectFrame σε μια διαφάνεια, εμφανίζεται το μήνυμα “EMBEDDED OLE OBJECT” στη διαφάνεια εξόδου. Αυτό το μήνυμα είναι σκόπιμο και ΔΕΝ αποτελεί σφάλμα.
Για περισσότερες πληροφορίες σχετικά με τη εργασία με αντικείμενα OLE, δείτε το Manage OLE.
Εξήγηση και λύση
Το Aspose.Slides εμφανίζει το μήνυμα “EMBEDDED OLE OBJECT” για να σας ενημερώσει ότι το αντικείμενο OLE έχει αλλάξει και ότι η εικόνα προεπισκόπησης πρέπει να ενημερωθεί.
Για παράδειγμα, αν προσθέσετε ένα γράφημα Microsoft Excel ως OleObjectFrame σε μια διαφάνεια (για περισσότερες λεπτομέρειες, δείτε το άρθρο “Manage OLE”) και έπειτα ανοίξετε την παρουσίαση στο Microsoft PowerPoint, θα δείτε αυτήν την εικόνα στη διαφάνεια:

Αν θέλετε να ελέγξετε και να επιβεβαιώσετε ότι το αντικείμενο OLE προστέθηκε στη διαφάνεια, πρέπει να κάνετε διπλό κλικ στο μήνυμα “EMBEDDED OLE OBJECT”, ή μπορείτε να κάνετε δεξί κλικ πάνω του και να επιλέξετε την επιλογή Αντικείμενο > Επεξεργασία.

Το PowerPoint τότε ανοίγει το ενσωματωμένο αντικείμενο OLE.

Η διαφάνεια ενδέχεται να διατηρεί το μήνυμα “EMBEDDED OLE OBJECT”. Μόλις κάνετε κλικ στο αντικείμενο OLE, η προεπισκόπηση της διαφάνειας ενημερώνεται και το μήνυμα “EMBEDDED OLE OBJECT” αντικαθίσταται με την πραγματική εικόνα του αντικειμένου OLE.

Τώρα, ίσως θελήσετε να αποθηκεύσετε την παρουσίασή σας ώστε να εξασφαλίσετε ότι η εικόνα για το αντικείμενο OLE ενημερώνεται σωστά. Με αυτόν τον τρόπο, μετά την αποθήκευση της παρουσίασης, όταν την ανοίξετε ξανά, ΔΕΝ θα δείτε το μήνυμα “EMBEDDED OLE OBJECT”.
Άλλες λύσεις
Λύση 1: Αντικατάσταση του μηνύματος “Embedded OLE Object” με εικόνα
Αν δεν θέλετε να αφαιρέσετε το μήνυμα “EMBEDDED OLE OBJECT” ανοίγοντας την παρουσίαση στο PowerPoint και στη συνέχεια αποθηκεύοντάς την, μπορείτε να αντικαταστήσετε το μήνυμα με την προτιμώμενη εικόνα προεπισκόπησης. Οι παρακάτω γραμμές κώδικα δείχνουν τη διαδικασία:
const presentation = new aspose.slides.Presentation("embeddedOLE.pptx");
try {
const slide = presentation.getSlides().get_Item(0);
const oleFrame = slide.getShapes().get_Item(0);
// Προσθέστε μια εικόνα στους πόρους της παρουσίασης.
const image = aspose.slides.Images.fromFile("myImage.png");
const oleImage = presentation.getImages().addImage(image);
// Ορίστε έναν τίτλο και την εικόνα για την προεπισκόπηση αντικειμένου OLE.
oleFrame.setSubstitutePictureTitle("My title");
oleFrame.getSubstitutePictureFormat().getPicture().setImage(oleImage);
oleFrame.setObjectIcon(false);
presentation.save("embeddedOLE-newImage.pptx", aspose.slides.SaveFormat.Pptx);
} finally {
if (presentation != null) presentation.dispose();
}
Η διαφάνεια που περιέχει το OleObjectFrame μεταβάλλεται σε αυτήν:

Λύση 2: Δημιουργία πρόσθετου για PowerPoint
Μπορείτε επίσης να δημιουργήσετε ένα πρόσθετο για το Microsoft PowerPoint που θα ενημερώνει όλα τα αντικείμενα OLE όταν ανοίγετε παρουσιάσεις στο πρόγραμμα.