新しいので、リンクは2つしかなく、画像を投稿できません。アドレスをコピーして貼り付ける必要があり、ご不便をおかけして申し訳ありません
steinsoft.net/index.php?site=Programming/Code%20Snippets/Cpp/no8にあるものと同様のコードで Targa (.tga) 画像ファイルを解析しています
unsigned char 配列にデータを取得した後、ログに出力して手動で確認します。何らかの理由で暗い色が解析されていないようです。
シンプルな印刷コード
file.open( save );
//using while( tga.data[ i ] != NULL ) resulted in ~400,000 lines of garbage being appended
for( unsigned i = 1; i <= ( tga.width * tga.height * tga.byteCount ); i++ )
{
if( tga.data[ i ] == NULL )
break;
file << ( int )tga.data[ i ] << ",";
if( ( i % 3 ) == 0 )
file << "\n";
}
file.close( );
例
暗い : http://i.stack.imgur.com/qefIA.png : http://pastebin.com/8JeJwP2w
光: http://i.stack.imgur.com/XNTIK.png : http://pastebin.com/s2sW0XfM
ご覧のとおり、画像の上部の線は、暗い色 (この例では黒) の場合は含まれませんが、明るい色 (ピンク [255,53,204]) の場合は含まれています。
なぜこれが起こっているのかについて誰かが情報を持っていますか?
スペック
Windows ビスタ
Microsoft Visual C++ 2010 プロフェッショナル
Targa は、圧縮されていない 24 ビットとして保存されます。