教えてください。
環境:VB6 sp5 winXP sp2
行いたいこと(アウトプット):BMPファイルを作成して、HDDなどに保存したいです。
入力情報(インプット):VBコード内で配列としてピクセル情報を持っています。1000*1000の画像で、変数ImageData(1000000)の中に256階調でデータが入っています。
配列内のデータを元に1枚の画像(bmp形式)を作成これを保存したいです。
わかるかた、教えてください。
サンプルコードなどの場所などを添付していただければ幸いです。
よろしくお願いします。
質問の意味がわからなければ、お知らせください、追記します。
No.1ベストアンサー
- 回答日時:
当方、未熟者なので答えになるか分かりませんが一応…
用意するオブジェクト
Command1
Picture1
コード
Private Sub Command1_Click()
Dim ImageData(1000000) As String
Dim XPos As Long
Dim YPos As Long
Dim i As Long
Dim j As Long
Dim ColorR As Integer
Dim ColorG As Integer
Dim ColorB As Integer
Picture1.AutoRedraw = True
Picture1.Width = 15067
Picture1.Height = 15067
Picture1.ScaleMode = 3
Picture1.DrawWidth = 1
Picture1.ScaleHeight = 1000
Picture1.ScaleWidth = 1000
For i = 0 To 999999
ColorR = Int((255 * Rnd))
ColorG = Int((255 * Rnd))
ColorB = Int((255 * Rnd))
ImageData(i) = Hex(ColorR) & Hex(ColorG) & Hex(ColorB)
Next
For YPos = 0 To 999
For XPos = 1 To 999
Picture1.PSet (XPos, YPos), "&H" & ImageData(j)
j = j + 1
Next
Next
Call SavePicture(Picture1.Image, "C:\test.bmp")
MsgBox ("処理終了")
End Sub
ImageData(1000000)は16進数カラーコードなのでしょうか?
ランダムコードにしちゃいましたけど…
あとX方向にピクセル配置してX方向が1000ピクセル到達したらY方向に1ピクセルずれて、またX方向に1000ピクセルにしてます。
保存はCall SavePicture(Picture1.Image, "C:\test.bmp")でしてます。
Cドライブにtest.bmpのファイル名で作成してます。
ちなみに処理にものすごく時間がかかります。
私のPCがポンコツPCだからかもしれません。
答えになってなかったらすいません。
No.2
- 回答日時:
すいません。
さきほど回答したtype0000です。
一部間違いがありました。
修正箇所は下記のとおりです。
誤:For XPos = 1 To 999
正:For XPos = 0 To 999
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Excel(エクセル) excelの列幅高さが勝手に変わる(特定のPCだけ) 8 2022/07/14 16:51
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Windows 10 パソコンが使えず困ってます!(Microsoftアカウントでログイン後、PINコードに関するエラー) 2 2023/03/17 19:09
- PHP php 確認表示画面で値をSESSIONから取り出す理由の解釈は正しいでしょうか? 1 2023/06/09 17:39
- 写真・ビデオ iPhoneファイルでの形式について 1 2022/05/18 12:12
- iOS iPhone用動画保存アプリiCapのデータは外付けUSBメモリに保存できますか? 1 2022/10/18 17:48
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画像ファイルの高さと幅の取得
-
SavePictureで保存できない
-
画像をランダムに表示させたい...
-
PictureBoxでのアニメーション...
-
プロシージャまたは関数の引数...
-
Functionの戻り値を配列にした...
-
C言語のサフィックスについて
-
整数を二つ読み込み、それらの...
-
VBA public変数はどのようなこ...
-
EXCELからWORDの文章を取得
-
VBAでcallで呼び出したsubを終...
-
subsequentとnextの違いってな...
-
Excel ユーザーフォームで計算 ...
-
C#のループでtextboxに値を入れ...
-
VB2010 シリアル通信の文字列...
-
VB.NETでのイベントの途中終了
-
アクセスできない保護レベルエ...
-
Excel vba で複数のテキストの...
-
Excel VBAでsub,dimは何の略?
-
【HTML、VBScript】HTAアプリケ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SCALEの使い方教えてください
-
PictureBoxでのアニメーション...
-
FlexGridで文字色を変更。
-
ボールが壁に当たって跳ね返る...
-
Matlabでsin波を使って矩形波を...
-
SavePictureで保存できない
-
ピッ、ってアルファベットでど...
-
VB6でマウスのドラッグで範囲を...
-
Picture box の サイズを変更
-
ホンテットマンションに乗った...
-
Matlab/SimulinkのChirp信号に...
-
C言語のOpenGLで複数のテクスチ...
-
[ASP]小数点第2位以下をカット!
-
文字間の幅の設定
-
ピクチャーボックスの画像を印...
-
ASPで日付(期間)検索
-
BMPファイルを作成し保存
-
画像処理
-
マウスポインタの変更
-
画像をランダムに表示させたい...
おすすめ情報