Objektförhandsgranskning platshållare när OleObjectFrame läggs till

Introduktion

När du använder Aspose.Slides för .NET och lägger till OleObjectFrame på en bild visas ett “EMBEDDED OLE OBJECT”-meddelande på den genererade bilden. Detta meddelande är avsiktligt och INTE ett fel.

För mer information om hur du arbetar med OLE-objekt, se Hantera OLE.

Förklaring och lösning

Aspose.Slides visar meddelandet “EMBEDDED OLE OBJECT” för att meddela att OLE-objektet har ändrats och förhandsgranskningsbilden måste uppdateras.

Till exempel, om du lägger till ett Microsoft Excel-diagram som ett OleObjectFrame på en bild (för mer detaljer, se artikeln “Manage OLE”) och sedan öppnar presentationen i Microsoft PowerPoint, kommer du att se den här bilden på bilden:

OLE-objektmeddelande

Om du vill kontrollera och bekräfta att ditt OLE-objekt har lagts till på bilden måste du dubbelklicka på meddelandet “EMBEDDED OLE OBJECT”, eller så kan du högerklicka på det och gå via alternativet Object > Edit.

OLE-objekt > Redigera

PowerPoint öppnar sedan det inbäddade OLE-objektet.

OLE-objektsdata

Bilden kan behålla meddelandet “EMBEDDED OLE OBJECT”. När du klickar på OLE-objektet uppdateras förhandsgranskningen av bilden och meddelandet “EMBEDDED OLE OBJECT” ersätts av den faktiska bilden för OLE-objektet.

OLE-objektförhandsgranskning

Nu kanske du vill spara presentationen för att säkerställa att bilden för OLE-objektet uppdateras korrekt. På så sätt, efter att du sparat presentationen, när du öppnar den igen, kommer du INTE att se meddelandet “EMBEDDED OLE OBJECT”.

Andra lösningar

Lösning 1: Ersätt meddelandet “Embedded OLE Object” med en bild

Om du inte vill ta bort meddelandet “EMBEDDED OLE OBJECT” genom att öppna presentationen i PowerPoint och sedan spara den, kan du ersätta meddelandet med din föredragna förhandsgranskningsbild. Dessa kodrader demonstrerar processen:

using Aspose.Slides;
using Aspose.Slides.Export;

using var presentation = new Presentation("embeddedOLE.pptx");

var slide = presentation.Slides[0];
var oleFrame = (IOleObjectFrame)slide.Shapes[0];

// Add an image to presentation resources.
using var imageStream = File.OpenRead("myImage.png");
var oleImage = presentation.Images.AddImage(imageStream);

// Set the image for the OLE object preview.
oleFrame.SubstitutePictureFormat.Picture.Image = oleImage;
oleFrame.IsObjectIcon = false;

presentation.Save("embeddedOLE-newImage.pptx", SaveFormat.Pptx);

Bilden som innehåller OleObjectFrame ändras sedan till detta:

Ny OLE-objektbild

Lösning 2: Skapa ett tillägg för PowerPoint

Du kan också skapa ett tillägg för Microsoft PowerPoint som uppdaterar alla OLE-objekt när du öppnar presentationer i programmet.