ページ 11

画像の保存

Posted: 2008年5月26日(月) 13:29
by かっぽれ
現在お絵描きソフトを作っていて、最低限の機能はとりあえず作ったんですが、
その描画した絵の保存の仕方がわかりません。
ちなみに描画するデバイスコンテキストのハンドルはhDCでそのhDCのもとのウィンドウ
ハンドルはCambusWndです。

Posted: 2008年5月26日(月) 13:35
by konisi
http://www.activebasic.com/forum/viewtopic.php?t=672
これを参考にするか、あるいは(ビットマップで保存するなら)「DIB ヘッダ」等で調べてみてください。

Posted: 2008年5月26日(月) 15:44
by かっぽれ
konisiさん、ありがとうございます。
ただ、すごい難しそうですね……。
後でじっくり勉強してみます。

Posted: 2008年5月26日(月) 22:38
by 淡幻星
久しぶりに来て偶々開いたスレッドで、
投稿したコードが引用されていたので喜んでみる♪

# でしゃばりすみません>konisiさん



前置きはさておき。
ちなみに描画するデバイスコンテキストのハンドルはhDCでそのhDCのもとのウィンドウ
ハンドルはCambusWndです。
その場合は、以下のようにすると保存できるはずです。
※クラスWsEasyBmpの定義を適当なファイルに保存し、プロジェクトに参加させておいてください。

コード: 全て選択


Dim objBMP As WsEasyBmp
objBMP.SetCpuSleepLevel(-1)
'↑諸事情により、これを設定しないと一時的にCPU利用率が100%になる仕様です。
' 最初にこれを指定すると、回避できます。
objBMP.SetTargetWindow( CambusWnd )
objBMP.GetBmp( 0, 0, 240, 320 )
'↑ウインドウからの画像取り込みサイズ240x320は適切に変更してください。
objBMP.Bsave( "保存ファイル名.bmp" )
手前味噌ですが、よろしければこちらも参照ください。
BMPの他にJpegやGifも読み込める、WsEasyBmpクラスの
上位互換クラスWsEasyPicsをサンプル付きで公開しています。

サンプル&ヘルプ付きAB4開発支援ライブラリ
ダウンロード先

Posted: 2008年5月27日(火) 07:23
by konisi
久しぶりに来て偶々開いたスレッドで、
投稿したコードが引用されていたので喜んでみる♪

# でしゃばりすみません>konisiさん
ビットマップ形式で保存するクラスを誰かが昔書いてたなと思って調べてみたら
1つしか見つかりませんでね、助かりました。

読み込むクラスは幾つもあったのですが。