OleObjectFrame の追加時に発生するオブジェクトプレビューの問題
はじめに
Aspose.Slides for Python via Java を使用してスライドに OleObjectFrame を追加すると、出力スライドに「EMBEDDED OLE OBJECT」メッセージが表示されます。このメッセージは意図されたものであり、バグではありません。
OLE オブジェクトの操作に関する詳細情報は、OLE の管理をご覧ください。
説明とソリューション
Aspose.Slides は、OLE オブジェクトが変更されプレビュー画像を更新する必要があることを通知するために「EMBEDDED OLE OBJECT」メッセージを表示します。
たとえば、Microsoft Excel のチャートを OleObjectFrame としてスライドに追加した場合(詳細は「OLE の管理」記事をご参照ください)、Microsoft PowerPoint でプレゼンテーションを開くと、スライドに次の画像が表示されます:

OLE オブジェクトがスライドに追加されたことを確認するには、「EMBEDDED OLE OBJECT」メッセージをダブルクリックするか、右クリックして Object > Edit を選択します。

PowerPoint は埋め込み OLE オブジェクトを開きます。

スライドには「EMBEDDED OLE OBJECT」メッセージが残る場合があります。OLE オブジェクトをクリックすると、スライドのプレビューが更新され、「EMBEDDED OLE OBJECT」メッセージは OLE オブジェクトの実際の画像に置き換わります。

プレゼンテーションを保存して、更新された OLE オブジェクトのプレビュー画像を保持してください。再度プレゼンテーションを開くと、「EMBEDDED OLE OBJECT」メッセージは表示されなくなります。
その他の解決策
PowerPoint でプレゼンテーションを開いて保存することで「EMBEDDED OLE OBJECT」メッセージを削除したくない場合は、メッセージを任意のプレビュー画像に置き換えることができます。以下のコードがその手順を示しています:
import jpype
import asposeslides
if not jpype.isJVMStarted():
jpype.startJVM()
from asposeslides.api import Images, Presentation, SaveFormat
presentation = Presentation("embeddedOLE.pptx")
try:
slide = presentation.getSlides().get_Item(0)
ole_frame = slide.getShapes().get_Item(0)
# プレゼンテーションのリソースに画像を追加します。
image = Images.fromFile("myImage.png")
try:
ole_image = presentation.getImages().addImage(image)
finally:
image.dispose()
# OLE オブジェクトのプレビュー用にタイトルと画像を設定します。
ole_frame.setSubstitutePictureTitle("My title")
ole_frame.getSubstitutePictureFormat().getPicture().setImage(ole_image)
ole_frame.setObjectIcon(False)
presentation.save("embeddedOLE-newImage.pptx", SaveFormat.Pptx)
finally:
presentation.dispose()
OleObjectFrame を含むスライドは次のように変更されます:

FAQ
「EMBEDDED OLE OBJECT」メッセージが表示されるのはなぜですか?
このメッセージは、OLE オブジェクトが変更されプレビュー画像の更新が必要であることを示す意図的な動作です。
PowerPoint でプレビューを更新するにはどうすればよいですか?
メッセージをダブルクリックするか、Object > Edit を選択して埋め込み OLE オブジェクトを開きます。OLE オブジェクトをクリックしてプレビューを更新し、プレゼンテーションを保存してください。
PowerPoint でプレゼンテーションを開かずにメッセージを置き換えることはできますか?
はい。上記のコード例のように、OLE オブジェクトに任意のプレビュー画像を割り当てることでメッセージを置き換えることができます。