1
ビットマップファイルをC++で開き、それを変更して別のビットマップファイルを作成しようとしています。問題は、ファイルのバイトを変更しなくてもofstreamでビットマップファイルを出力しようとすると、奇妙な出力が発生することです。ofstreamでビットマップファイルを作成すると奇妙な出力が発生する
1920 * 1080はRED、GREEN、BLUEの画像のサイズで、* 3は画像のサイズです。ビットマップファイルには54バイトのヘッダーがあることを知っています。したがって、正確には1920 * 1080 * 3 + 54バイトが6.bmpにあります。
入力されたとき:input
その後、私は、出力のためのthisを取得します。
(私はそれらをアップロードするために、両方の画像をリサイズが、両者は1920 * 1080です)
私は、Windows 8.1のG ++でこのコードをコンパイル。私はビットマップライブラリを使用したくありません。
*ビットマップライブラリを使いたくない*実際にビットマップのサイズ変更は1行の 'fout'ループで行うことができると考えていましたか? – PaulMcKenzie
ファイルのサイズを 'DIR'でチェックしましたか?パディングなどの理由で長さに関する仮定が間違っている可能性があるためです。 –
入力ファイルと出力ファイルの実際のサイズはどれくらいですか? STLストリームはバイナリファイルにとっては良いことではなく、しばしば '\ 0'と' \ n'の使い方を変えます。 – ilotXXI