画像ファイル(Bmp)を拡大・縮小保存するには?

解決


YOSHIYUKI  URL  2003-05-22 17:03:27  No: 107238  IP: [192.*.*.*]

Imageオブジェクトにロードした画像ファイルを
BMPに保存したいのですが、うまくいきません。
ご存知の方、お教えください。m(_ _)m
 ロードしたオブジェクトのWidth、Heightを
変えてSavePictureしても駄目なんですね。

編集 削除
Say  2003-05-22 19:05:28  No: 107239  IP: [192.*.*.*]

>Imageオブジェクト
Imageコントロールのことでしょうか?
Stretch=Trueにしても、見た目が変化するだけで、
Pictureデータはもとのままです。
一旦、PictureBoxにPaintPictureで拡大縮小してから
保存してはいかがでしょう?

編集 削除
YOSHIYUKI  URL  2003-05-23 10:17:00  No: 107240  IP: [192.*.*.*]

>Say
>Imageコントロールのことでしょうか?

  すいません。間違えました。Imageコントロールです。m(_ _)m
PaintPictureしてからSavePictureだと表示上は描画
できているんですが、SavePictureで「380 プロパティの値が
不正です。」のエラーで落ちてしまっているんですよ。

編集 削除
すーさん  2003-05-23 11:44:01  No: 107241  IP: [192.*.*.*]

Formにピクチャーボックスを2個コマンドボタンを1個配置

Private Sub Command1_Click()
Picture1.Picture = LoadPicture("c:\windows\グリーン ストーン.bmp")
Picture1.AutoSize = True
Picture2.Width = Picture1.Width * 2
Picture2.Height = Picture1.Height * 2
Picture2.PaintPicture Picture1.Picture, 0, 0, Me.Width, Me.Height, 0, 0, Picture1.Width, Picture1.Height, vbSrcCopy
Picture2.Refresh
SavePicture Picture2.Image, "C:\test.bmp"

画像ファイルはXPでの私の環境です。

編集 削除
YOSHIYUKI  URL  2003-05-23 18:22:59  No: 107242  IP: [192.*.*.*]

>すーさん

  私の環境(WinNT4.0+VB6(SP5))では、Refresh時に
描画したものが消えてしまっていたんですが、
なんてことはないAutoRedrawがFalseになって
いただけなんですね。(^^;)
おかげ様で解決しました。ありがとうございました。m(_ _)m

編集 削除