OleObjectFrameを追加した際のオブジェクト変更問題

問題の説明

開発者がAspose.Slides for PHP via Javaを使用してスライドにOleObjectFrameを追加すると、出力スライドにOLEオブジェクトの代わりにオブジェクト変更メッセージが表示されます。ほとんどのAspose.Slides for PHP via Javaの顧客は、これはバグやエラーだと考えています。

批評分析と説明

まず初めに、スライドにOleObjectFrameを追加した後にAspose.Slides for PHP via Javaが表示するオブジェクト変更メッセージは、Aspose.Slides for PHP via Javaのエラーやバグではないことを知ることが重要です。これは、オブジェクトが変更され、画像を更新する必要があることをユーザーに通知するための情報やメッセージです。

例えば、スライドにOleObjectFrameとしてMicrosoft Excel Chartを追加すると(スライドにOleObjectFrameを追加する詳細とコードスニペットについてはこちらをクリック)、その後MS PowerPointを使ってプレゼンテーションファイルを開くと、OLEオブジェクトが追加されたスライドは次のようになります:

todo:image_alt_text

: OLEオブジェクトが追加された後のオブジェクト変更メッセージを表示するスライド

これはエラーではなく、OLEオブジェクトはまだスライドに追加されています。これをテストしたい場合は、オブジェクト変更メッセージをダブルクリックするか、右クリックしてワークシートオブジェクト -> 編集オプションを選択してください。以下の図のようになります:

todo:image_alt_text

: OLEオブジェクトを編集するための編集オプションを選択

ポップアップメニューの編集オプションを選択すると、埋め込みOLEオブジェクトが編集可能な形式で表示されます。以下のようになります:

todo:image_alt_text

: 編集可能な形式のOLEオブジェクト

MS PowerPointのスライドプレビューを表示する左ペインにはまだオブジェクト変更メッセージが表示されます。OLEオブジェクトをクリックすると、スライドプレビューが変更され、変更されたオブジェクトメッセージがOLEオブジェクトの画像に置き換わります。以下のようになります:

todo:image_alt_text

: OLEオブジェクト画像の更新

今、MS PowerPointを使用してプレゼンテーションファイルを保存し、OLEオブジェクトの画像を更新する必要があります。一度プレゼンテーションを保存して再度MS PowerPointを使って開くと、オブジェクト変更メッセージが表示されなくなります。

さらに解決策

上記の批評分析では、MS PowerPointでプレゼンテーションファイルを開いて保存することでOLEオブジェクトの画像が更新されることを示しました。しかし、オブジェクト変更メッセージに対処するための解決策は2つあります。

1つ目の解決策: オブジェクト変更メッセージを画像で置き換える

オブジェクト変更メッセージが気に入らない場合は、そのメッセージを自分の画像で置き換えることもできます。希望の画像をプレゼンテーションに追加し、追加した画像のIDを使用してオブジェクト変更メッセージを置き換えることができます。

これを実現するには、スライドにOleObjectFrameを追加した後、この数行のコードをアプリケーションに追加します。

上記のコードをアプリケーションに追加した後、OleObjectFrameを含む結果のスライドは次のようになります:

todo:image_alt_text

: 画像で置き換えられたオブジェクト変更メッセージ

2つ目の解決策: MS PowerPoint用のアドオンを作成する

MS PowerPointのアドオンを作成して、プレゼンテーションをMS PowerPointで開いたときにすべてのOLEオブジェクトを更新することも試みることができます。