C ++ : Fread 및 Fwrite의 루프를 사용하여 BMP 복사, Casues 출력 BMP는 입력 BMP에서 FISRT One의 색상으로 채워집니다.
문제
왜 그런지 모르겠지만 첫 번째 픽셀 (왼쪽 하단)이 올바르게로드되었지만 다른 픽셀은로드되지 않고 첫 번째 색상은 전체 그림에 사용됩니다 ...
나는 이것을주기에있다
fread(&pix,sizeof(pix),1,pictureIn);
fwrite(&pix,sizeof(pix),1,pictureOut);
편집하다:
Pix는 서명되지 않은 3 개의 숯 (RGB)의 구조물이며,로드 파일 및 정보 헤더는 괜찮은 것 같습니다.
해결책
어떤 OS를 사용하고 있습니까? 최근에 Win32에서 이진 파일을 읽는 데 문제가있었습니다. "B"플래그를 전달하는 것을 잊어 버린 것으로 나타났습니다.
pictureIn = fopen ("in.bmp", "rb");
pictureOut = fopen ("out.bmp", "wb");
제휴하지 않습니다 StackOverflow