
640x480の画像のRGB値を格納した1次元のbyte型の配列があります。配列のサイズは640x480x3=921600です。ここから画像として表示させたいのですがどのようにすればよいでしょうか。
試したこと:
自分で調べたところbyte配列からbitmapに変換するやり方があったので以下のコードを試したのですがうまくいきませんでした。
MemoryStream ms = new MemoryStream(data);
Bitmap bmp = new Bitmap(ms);
※dataは上記のbyte配列です
Bitmapのインスタンスを作るところでArgumentExceptionエラーが出てしまいます。
No.3ベストアンサー
- 回答日時:
既に回答ありますけども…。
921600バイト分の配列だけではビットマップ画像として構築するには情報が足りません。
サイズは?
ピクセルフォーマットは?
コードにしようとしている貴方は知っているかも知れませんが、データが渡されるメソッド側では何も判りません。
ビットマップファイルヘッダーなどのヘッダを追加して渡すか、サイズやピクセルフォーマットを指定して作成されたBitmapに対してピクセルデータとして渡すか…になるかと思います。
# 前者だとBitmap(Stream)で、後者だとBitmap(Int32, Int32, PixelFormat)で。
No.2
- 回答日時:
dataのbyte列の並びが、Bitmapのコンストラクタに与えることのできるデータフォーマットに適合していないと言っています。
適合した形式に変換して与える必要があると思います。
Bitmap(Stream) - Microsoft Docs .NET documentation
https://docs.microsoft.com/ja-jp/dotnet/api/syst …
> 例外
> ArgumentException
> stream にイメージ データが含まれていないか null です。
> または stream に、65,535 ピクセルよりも大きい 1 次元の PNG イメージ ファイルが含まれています。
参考:
ビットマップの種類
https://docs.microsoft.com/ja-jp/dotnet/framewor …
> グラフィックスファイル形式
> ディスクファイルにビットマップを保存するための標準形式は多数あります。
> GDI + は、次の段落で説明されているグラフィックスファイル形式をサポートしています。
> 以下略
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- C言語・C++・C# TCP/IP通信時のサーバーからの受信 2 2022/11/23 09:11
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Visual Basic(VBA) Vbaで数式をポーランド記法に変換するコードを作って実行しようとするとフリーズします。 1 2022/05/24 17:53
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- その他(プログラミング・Web制作) pythonのこのエラーがわかりません 3 2022/11/16 14:54
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
このQ&Aを見た人はこんなQ&Aも見ています
-
ピクチャーボックスの大きさに合わせて画像を表示
Visual Basic(VBA)
-
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
C# インスタンスの破棄
その他(プログラミング・Web制作)
-
-
4
C# データ配列から画像を作成する方法について
C言語・C++・C#
-
5
C#で、画像の、指定した座標の色情報を取得し
C言語・C++・C#
-
6
インスタンス参照でアクセスできない。代わりに型名?
C言語・C++・C#
-
7
例外処理のフローチャートの記述方法
C言語・C++・C#
-
8
C# DrawImage 物理サイズでなく、ピクセルサイズでの描画
C言語・C++・C#
-
9
C#でのpngからbmpへの変換について
C言語・C++・C#
-
10
ManagementClassが見つからない。
C言語・C++・C#
-
11
C#で角が丸いテキストボックス
その他(プログラミング・Web制作)
-
12
「タイプ初期化子が例外をスローしました」エラー何?
Visual Basic(VBA)
-
13
C# ReadOnlyのTextBoxで
C言語・C++・C#
-
14
「指定されたキャストは有効ではありません。」とエラーが出てしまいます。
Microsoft ASP
-
15
DWORDの実際の型は何でしょうか
C言語・C++・C#
-
16
C# Process.Startメソッドで複数引数を渡したい
その他(プログラミング・Web制作)
-
17
【VB】タブ切り替え時のイベント
Visual Basic(VBA)
-
18
アセンブリ名とは??
Visual Basic(VBA)
-
19
【PL/SQL】FROM区に変数を使う方法
Oracle
-
20
C言語 配列の長さの上限
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
C#でbyte配列から画像を表示さ...
-
エクセルVBA:変数の疑問?
-
エクセルでXY座標に並べられた...
-
複数のtextboxの処理を一括で行...
-
VBA 桁数が混在するソート
-
vba フィルター 複数条件 3つ以...
-
Redim とEraseの違いは?
-
Dir関数で読み取り順を操作でき...
-
VBA フォルダ内のファイルを、...
-
VBScriptでCSVファイルを読み出...
-
構造体配列内の文字列検索のよ...
-
VB6からの移行したいけど、VB.N...
-
ACCESSであえてデータを配列形...
-
VB.NETの配列の限界を教えてく...
-
データ数の多い構造体配列について
-
構造体配列の特定のメンバーをF...
-
COBOLの基本的な事なので...
-
GetOpenFilename(MultiSelect...
-
C++で作成したDLLにVBAから配列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA 変数名に変数を使用したい。
-
vba フィルター 複数条件 3つ以...
-
C#でbyte配列から画像を表示さ...
-
Dir関数で読み取り順を操作でき...
-
エクセルでXY座標に並べられた...
-
配列のペースト出力結果の書式...
-
定数配列の書き方
-
大量の変数を定義するにはどう...
-
構造体配列の特定のメンバーをF...
-
Redim とEraseの違いは?
-
複数のtextboxの処理を一括で行...
-
VB.NETの配列にExcelから読み込...
-
COBOLの基本的な事なので...
-
Excel2010のinputboxで複数デー...
-
VBAでMODE関数をつくる
-
レコードセットの中身を配列に...
-
ReDim PreserveよりもReDimが遅い
-
EXCELを使って、アクセスログを...
-
配列の中の最大値とそのインデ...
-
VB6のメモリ解放に関して
おすすめ情報