立方体を回転させた図を2つのPictureBoxに表示しています。
それを1つの画像ファイル(BMP)として保存したいのですがいい方法は無いでしょうか?
OSはwindows2000でVB6.0-SP5を使っています。
「いい方法」という方法を探しだす方法があればいいんだけどね ('A`)
「2つを1つにする」という操作が曖昧すぎて何とも言えません
(画像1を画像2で上書きして1つになったからOK、って言うわけではないでしょう?)
単純に"横に並べて/縦に並べて"なら、
"横/縦に描写したもの"をSavePictureメソッドで保存してみては?
ガッさんお返事ありがとうございます。
また、書き方が曖昧ですいません。
私がしたかった事は横に並べたものを1つの画像にすることです。
画像の結合といえばわかるでしょうか?
>"横/縦に描写したもの"をSavePictureメソッドで保存してみては?
つまり新しいPictureBoxを作って、
そこに画像1・2を横に並べたように描画するって事ですか?
また、立方体はLineメソッドを使って描いたもので
もととなる画像ファイルは無いのですがそれでもいけますか?
> 画像の結合といえばわかるでしょうか?
どちらかというと「私がしたかった事は横に並べたものを1つの画像にすることです。」の一文の方が分かりやすいですね(^^
> つまり新しいPictureBoxを作って、
> そこに画像1・2を横に並べたように描画するって事ですか?
そういうことです。
> また、立方体はLineメソッドを使って描いたもので
> もととなる画像ファイルは無いのですがそれでもいけますか?
イケるみたいです。
しかし私も詳しくは分からないので、とりあえずためしてみました。
コピペして実行すると、二つの色違いで大きさも違う円が描写されたビットマップ、
hoge.bmpがカレントディレクトリにできます。
Option Explicit
Private pic1 As PictureBox
Private pic2 As PictureBox
Private pic3 As PictureBox
Private Sub Form_Load()
Me.ScaleMode = vbPixels
Set pic1 = CreatePictureBox("pic1")
Set pic2 = CreatePictureBox("pic2")
Set pic3 = CreatePictureBox("pic3")
pic3.Move 0, 0, 200, 100
pic1.Circle (50, 50), 25, QBColor(1)
pic2.Circle (50, 50), 35, QBColor(2)
pic3.PaintPicture pic1.Image, 1, 1, 100, 100
pic3.PaintPicture pic2.Image, 100, 1, 100, 100
pic3.Visible = True
SavePicture pic3.Image, "hoge.bmp"
End Sub
Function CreatePictureBox(ByVal Name As String) As PictureBox
Set CreatePictureBox = Me.Controls.Add("VB.PictureBox", Name)
With CreatePictureBox
.ScaleMode = vbPixels
.Move 0, 0, 100, 100
.AutoRedraw = True
End With
End Function
ガッさんが書いてくれたプログラムで上手くいけそうです。
あとは、自分用に少しいじるだけです^^
ガッさん、ありがとうございましたm(_ _)m
| ツイート |
|