1

*.figC# を使用してファイル (Matlab から) をビットマップ (または、pictureBox で使用できる任意のタイプ) に変換する際に問題があります。

このファイルを何らかの方法で読み取ってから、pictureBox に表示する必要があります。

たとえば、いくつかの方法を試しました。

Image img = Image.FromFile(fileName);
Bitmap bmp1 = new Bitmap(img.Width, img.Height);

しかし、最初のステップで「メモリ不足」の例外がスローされました。

それを行う方法はありますか??

4

2 に答える 2

1

提案があります:

ピクチャボックスの代わりに、Windows フォームにパネルを配置します。次に、System.Diagnostics.Process を使用して matlab ビューアーを起動します (これには依存関係が必要です。申し訳ありません)。これで、ビューアのメイン ウィンドウのウィンドウ ハンドルを取得するために、次の手順を使用できます。

プロセスIDからメインウィンドウハンドルを取得するには?

次に、その親を Windows フォームのパネルに変更します。

http://support.microsoft.com/kb/89563

以前にこのトリックを使用したことがあり、微調整が必​​要ですが、別のプロセスのメイン ウィンドウをキャプチャして、フォームの子コントロールにすることができます。これをより簡単に行う方法を見つけることができれば、それは素晴らしいことです。

于 2012-10-19T20:10:13.990 に答える
0

イメージ ファイルの形式が正しくない場合にも、メモリ不足の例外が発生します。 http://msdn.microsoft.com/en-us/library/stf701f5.aspx

何らかのツールを使用して .fig ファイルを画像形式に変更する必要がある可能性があります。Matlab が .fig ファイルを保存する方法がわからないので、ファイルが実際にどのように保存されているかを調査するか、ファイルを実行可能な形式に更新するサードパーティ ソフトウェアを見つける必要があります。

于 2012-10-19T19:46:39.073 に答える