مشکل پیشنمایش شی هنگام افزودن OleObjectFrame
معرفی
با استفاده از Aspose.Slides برای Python از طریق .NET، وقتی یک OleObjectFrame را به یک اسلاید اضافه میکنید، پیام «آبجکت OLE جاسازیشده» روی اسلاید خروجی ظاهر میشود. این پیام عمدی است و خطا نیست.
برای اطلاعات بیشتر درباره کار با اشیای OLE، به مدیریت OLE مراجعه کنید.
توضیح و راه حل
Aspose.Slides پیام «آبجکت OLE جاسازیشده» را برای اطلاع شما نمایش میدهد که شی OLE تغییر کرده و تصویر پیشنمایش باید بهروز شود.
به عنوان مثال، اگر یک چارت Microsoft Excel را به عنوان یک OleObjectFrame به اسلاید اضافه کنید (برای جزئیات بیشتر، مقاله «مدیریت OLE» را ببینید) و سپس ارائه را در Microsoft PowerPoint باز کنید، این تصویر را روی اسلاید خواهید دید:

اگر میخواهید تأیید کنید که شی OLE شما به اسلاید اضافه شده است، باید دو بار روی پیام «آبجکت OLE جاسازیشده» کلیک کنید، یا میتوانید روی آن کلیک راست کنید و گزینه Object > Edit را انتخاب کنید.

PowerPoint سپس شی OLE جاسازیشده را باز میکند.

اسلاید ممکن است پیام «آبجکت OLE جاسازیشده» را نگه دارد. وقتی بر روی شی OLE کلیک کنید، پیشنمایش اسلاید بهروزرسانی میشود و پیام «آبجکت OLE جاسازیشده» با تصویر واقعی شی OLE جایگزین میشود.

حال ممکن است بخواهید ارائه خود را ذخیره کنید تا تصویر شی OLE بهدرستی بهروز شود. به این ترتیب، پس از ذخیرهسازی ارائه و باز کردن دوباره آن، پیام «آبجکت OLE جاسازیشده» نمایش داده نخواهد شد.
راهحلهای دیگر
راهحل 1: جایگزین کردن پیام «آبجکت OLE جاسازیشده» با یک تصویر
اگر نمیخواهید با باز کردن ارائه در PowerPoint و سپس ذخیرهکردن، پیام «آبجکت OLE جاسازیشده» را حذف کنید، میتوانید این پیام را با تصویر پیشنمایش دلخواه خود جایگزین کنید. این خطوط کد فرآیند را نشان میدهد:
with Presentation("embeddedOLE.pptx") as presentation:
slide = presentation.slides[0]
ole_frame = slide.shapes[0]
# افزودن یک تصویر به منابع ارائه.
with Images.from_file("myImage.png") as image:
ole_image = presentation.images.add_image(image)
# تنظیم عنوان و تصویر برای پیشنمایش شی OLE.
ole_frame.substitute_picture_title = "My title"
ole_frame.substitute_picture_format.picture.image = ole_image
ole_frame.is_object_icon = False
presentation.save("embeddedOLE-newImage.pptx", SaveFormat.PPTX)
سپس اسلاید حاوی OleObjectFrame به این شکل تغییر میکند:

راهحل 2: ایجاد افزونهای برای PowerPoint
همچنین میتوانید یک افزونه برای Microsoft PowerPoint ایجاد کنید که تمام اشیای OLE را هنگام باز کردن ارائهها در برنامه بهروز کند.