مشكلة معاينة الكائن عند إضافة 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”، أو يمكنك النقر بزر الماوس الأيمن عليها واختيار Object > Edit.

ثم يفتح PowerPoint كائن OLE المدمج.

قد تظل الشريحة تحتفظ برسالة “EMBEDDED OLE OBJECT”. بمجرد النقر على كائن OLE، يتم تحديث معاينة الشريحة وتُستبدل رسالة “EMBEDDED OLE OBJECT” بالصورة الفعلية لكائن OLE.

الآن، قد ترغب في حفظ العرض التقديمي لضمان تحديث صورة كائن OLE بشكل صحيح. بهذه الطريقة، بعد حفظ العرض التقديمي، عند فتحه مرة أخرى، لن ترى رسالة “EMBEDDED OLE OBJECT”.
حلول أخرى
الحل 1: استبدال رسالة “Embedded OLE Object” بصورة
إذا لم ترغب في إزالة رسالة “EMBEDDED OLE OBJECT” بفتح العرض التقديمي في PowerPoint ثم حفظه، يمكنك استبدال الرسالة بصورة المعاينة المفضلة لديك. يوضح هذا الجزء من الشيفرة العملية:
Presentation presentation = new Presentation("embeddedOLE.pptx");
try {
ISlide slide = presentation.getSlides().get_Item(0);
IOleObjectFrame oleFrame = (IOleObjectFrame) slide.getShapes().get_Item(0);
// إضافة صورة إلى موارد العرض التقديمي.
IImage image = Images.fromFile("myImage.png");
IPPImage oleImage = presentation.getImages().addImage(image);
// تعيين عنوان وصورة لمعاينة كائن OLE.
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();
}
ثم تتغير الشريحة التي تحتوي على OleObjectFrame إلى ما يلي:

الحل 2: إنشاء إضافة لبرنامج PowerPoint
يمكنك أيضًا إنشاء إضافة لبرنامج Microsoft PowerPoint تقوم بتحديث جميع كائنات OLE عند فتح العروض التقديمية في البرنامج.