- ベストアンサー
CImageクラスをVisualC++6.0で使いたいのですが
CImageクラスを使うには atlimage.h をインクルードする必要がありますが、atlimage.h がオープンできないというエラーが出ます。VisualC++6.0だと使えないのでしょうか。 .NETでは無事コンパイルできました。しかし.NETが入っているのは会社のパソコンなので、できれば自宅の6.0でやりたいです。 6.0でCImageクラスを使う方法はないでしょうか? もしくは、他にPNG画像の読み込み・表示ができるクラスはないでしょうか? 分かる方、どうか教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
VC.NET2002以降をお持ちで MFCのソースがあるなら VCのインストールフォルダーの下の atlmfc\include\atlimage.hやatlmfc\src\atls\atlimage.cpp,atlimage2.cppなどを参考に移植しましょう CImageクラスは GDI+の単なるラッパーですよ GDIPlusStartupやReleaseGDIPlusをオブジェクトの構築・破棄で呼び出しながら GDI+のメンバーをMFCクラスのようにしてあるだけです マルチスレッドでも安全に呼び出せるような仕掛けがしてはありますが・・・ VC6.0付属のMSDNの英語版解説の『Graphics and Mulimedia』の下の『GDI+』を参照してみましょう なお VC6のインストールCDなどは結構古めのPlatformSDKなので 『Windows Server 2003 SDK』などをインストールしたほうがいいでしょう GDIPLUS.Hはインクリュードパスに無かったりします PNGを扱えるDLLなら vectorあたりで検索すれば見つかると思いますよ Webで『PNG DLL C/C++』などをキーワードに検索してもそこそこの情報は取得出来そうですよ ソースつきのライブラリーなんかもありそうです
その他の回答 (1)
- MrBan
- ベストアンサー率53% (331/615)
CImageがMFCに追加されたのは、MFC7以降です。 VC6の頃はMFC6ですので、CImageはありません。 自分で「GDI+」を使えばいけるのではないでしょうか。 調べてみてください。
お礼
手元の参考書にはビットマップリソースの表示方法しか載ってないもので・・・ 今はフリーのDLLに頼ることにします。 ご回答ありがとうございました。
お礼
なるほど、DLLですが。思いつきませんでした。(汗) 探したらありました。 ご回答ありがとうございます。