Objectvoorbeeldprobleem bij het toevoegen van OleObjectFrame
Inleiding
Met Aspose.Slides for Java, wanneer u een OleObjectFrame toevoegt aan een dia, wordt er een bericht "EMBEDDED OLE OBJECT" weergegeven op de uiteindelijke dia. Dit bericht is opzettelijk en GEEN fout.
Voor meer informatie over het werken met OLE‑objecten, zie Manage OLE.
Uitleg en Oplossing
Aspose.Slides toont het bericht "EMBEDDED OLE OBJECT" om u te informeren dat het OLE‑object is gewijzigd en dat de voorbeeldafbeelding moet worden bijgewerkt.
Bijvoorbeeld, als u een Microsoft Excel‑grafiek als een OleObjectFrame aan een dia toevoegt (voor meer details, zie het artikel "Manage OLE") en vervolgens de presentatie opent in Microsoft PowerPoint, ziet u deze afbeelding op de dia:

Als u wilt controleren en bevestigen dat uw OLE‑object aan de dia is toegevoegd, moet u dubbelklikken op het bericht "EMBEDDED OLE OBJECT", of u kunt er met de rechtermuisknop op klikken en via de optie Object > Bewerken gaan.

PowerPoint opent vervolgens het ingebedde OLE‑object.

De dia kan het bericht "EMBEDDED OLE OBJECT" behouden. Zodra u op het OLE‑object klikt, wordt de voorvertoning van de dia bijgewerkt en wordt het bericht "EMBEDDED OLE OBJECT" vervangen door de daadwerkelijke afbeelding van het OLE‑object.

Nu wilt u mogelijk de presentatie opslaan om te garanderen dat de afbeelding voor het OLE‑object correct wordt bijgewerkt. Op deze manier ziet u na het opslaan van de presentatie, wanneer u de presentatie opnieuw opent, het bericht "EMBEDDED OLE OBJECT" NIET meer.
Andere Oplossingen
Oplossing 1: Vervang het bericht "Embedded OLE Object" door een afbeelding
Als u het bericht "EMBEDDED OLE OBJECT" niet wilt verwijderen door de presentatie in PowerPoint te openen en vervolgens op te slaan, kunt u het bericht vervangen door uw voorkeursvoorbeeldafbeelding. De volgende regels code demonstreren het proces:
Presentation presentation = new Presentation("embeddedOLE.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
IOleObjectFrame oleFrame = (IOleObjectFrame) slide.getShapes().get_Item(0);
// Voeg een afbeelding toe aan de presentatieresources.
IImage image = Images.fromFile("myImage.png");
IPPImage oleImage = presentation.getImages().addImage(image);
// Stel een titel en de afbeelding in voor de weergave van het OLE-object.
oleFrame.setSubstitutePictureTitle("My title");
oleFrame.getSubstitutePictureFormat().getPicture().setImage(oleImage);
oleFrame.setObjectIcon(false);
presentation.save("embeddedOLE-newImage.pptx", SaveFormat.Pptx);
} finally {
if (presentation != null) presentation.dispose();
}
De dia die het OleObjectFrame bevat, verandert vervolgens in het volgende:

Oplossing 2: Maak een add‑on voor PowerPoint
U kunt ook een add‑on voor Microsoft PowerPoint maken die alle OLE‑objecten bijwerkt wanneer u presentaties opent in het programma.