画像の保存

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
かっぽれ

画像の保存

#1 投稿記事 by かっぽれ »

現在お絵描きソフトを作っていて、最低限の機能はとりあえず作ったんですが、
その描画した絵の保存の仕方がわかりません。
ちなみに描画するデバイスコンテキストのハンドルはhDCでそのhDCのもとのウィンドウ
ハンドルはCambusWndです。
konisi
記事: 893
登録日時: 2005年7月25日(月) 13:27
お住まい: 埼玉県東松山市
連絡する:

#2 投稿記事 by konisi »

http://www.activebasic.com/forum/viewtopic.php?t=672
これを参考にするか、あるいは(ビットマップで保存するなら)「DIB ヘッダ」等で調べてみてください。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。

に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
かっぽれ

#3 投稿記事 by かっぽれ »

konisiさん、ありがとうございます。
ただ、すごい難しそうですね……。
後でじっくり勉強してみます。
淡幻星
記事: 183
登録日時: 2005年7月19日(火) 07:02
お住まい: 宮城県
連絡する:

#4 投稿記事 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開発支援ライブラリ
ダウンロード先
konisi
記事: 893
登録日時: 2005年7月25日(月) 13:27
お住まい: 埼玉県東松山市
連絡する:

#5 投稿記事 by konisi »

久しぶりに来て偶々開いたスレッドで、
投稿したコードが引用されていたので喜んでみる♪

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

読み込むクラスは幾つもあったのですが。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。

に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
返信する