OleObjectFrame Ekleme Sırasında Nesne Önizleme Sorunu
Giriş
Aspose.Slides for .NET kullanarak bir slayta OleObjectFrame eklediğinizde, çıktı slaytında “EMBEDDED OLE OBJECT” mesajı gösterilir. Bu mesaj kasıtlıdır ve bir hata değildir.
OLE nesneleriyle çalışmak hakkında daha fazla bilgi için OLE’yi Yönet sayfasına bakın.
Açıklama ve Çözüm
Aspose.Slides, OLE nesnesinin değiştirildiğini ve önizleme görüntüsünün güncellenmesi gerektiğini bildirmek için “EMBEDDED OLE OBJECT” mesajını gösterir.
Örneğin, bir Microsoft Excel grafiğini OleObjectFrame olarak bir slayta eklediğinizde (daha fazla ayrıntı için “OLE’yi Yönet” makalesine bakın) ve ardından sunumu Microsoft PowerPoint’te açtığınızda, slaytta aşağıdaki görüntüyü görürsünüz:

OLE nesnesinin slayta eklendiğini kontrol edip onaylamak isterseniz, “EMBEDDED OLE OBJECT” mesajına çift tıklamanız gerekir veya üzerine sağ tıklayıp Object > Edit seçeneğini kullanabilirsiniz.

PowerPoint, gömülü OLE nesnesini açar.

Slayt “EMBEDDED OLE OBJECT” mesajını tutabilir. OLE nesnesine tıkladığınızda, slayt önizlemesi güncellenir ve “EMBEDDED OLE OBJECT” mesajı OLE nesnesinin gerçek görüntüsüyle değiştirilir.

Şimdi, OLE Nesnesi görüntüsünün doğru şekilde güncellenmesini sağlamak için sunumunuzu kaydetmek isteyebilirsiniz. Bu şekilde, sunumu kaydettikten ve tekrar açtıktan sonra “EMBEDDED OLE OBJECT” mesajını görmezsiniz.
Diğer Çözümler
Çözüm 1: “Embedded OLE Object” Mesajını Bir Görüntüyle Değiştirme
“EMBEDDED OLE OBJECT” mesajını PowerPoint’te sunumu açıp kaydederek kaldırmak istemiyorsanız, mesajı tercih ettiğiniz önizleme görüntüsüyle değiştirebilirsiniz. Aşağıdaki kod satırları bu süreci gösterir:
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 a title and the image for the OLE object preview.
oleFrame.SubstitutePictureTitle = "My title";
oleFrame.SubstitutePictureFormat.Picture.Image = oleImage;
oleFrame.IsObjectIcon = false;
presentation.Save("embeddedOLE-newImage.pptx", SaveFormat.Pptx);
OleObjectFrame içeren slayt daha sonra şu şekilde değişir:

Çözüm 2: PowerPoint İçin Bir Eklenti Oluşturma
Microsoft PowerPoint için, programda sunumları açtığınızda tüm OLE nesnelerini güncelleyen bir eklenti de oluşturabilirsiniz.