비트맵 파일을 fopen으로 불러와서 좌우반전시키고 fwrite로 저장하는 것까지는 성공 했습니다


그런데 제가 하고싶은건 파일을 저장하는게 아니라


불러온 비트맵 파일을 좌우반전 시켜서 그대로 화면에 출력하고 싶은데


도대체 어떤식으로 해야 할 지 모르겠습니다...



bool CTexture::VerticalBitmap(HDC hDC, const char* pFileName){


FILE* pFile = NULL;


fopen_s(&pFile, strPath.c_str(), "rb");


if (!pFile) {

return false;

}


BITMAPFILEHEADER m_fh;

BITMAPINFOHEADER m_ih;


fread(&m_fh, sizeof(unsigned char), sizeof(m_fh), pFile);

fread(&m_ih, sizeof(unsigned char), sizeof(m_ih), pFile);


m_iWidth = m_ih.biWidth;

m_iHeight = m_ih.biHeight;


fread(m_RGBTable, sizeof(unsigned char), 1024, pFile);



m_vecPixel.clear();

m_vecPixel.resize(m_iWidth * m_iHeight);


fread(&m_vecPixel[0], sizeof(unsigned char), m_vecPixel.size(), pFile);


unsigned char fPixel;


for (int i = 0; i < m_iWidth / 2; ++i) {

for (int j = 0; j < m_iHeight; ++j) {

fPixel = m_vecPixel[(m_iWidth) * (j + 1) - (i + 1)];

m_vecPixel[(m_iWidth) * (j + 1) - (i + 1)] = m_vecPixel[m_iWidth * j + i];

m_vecPixel[m_iWidth * j + i] = fPixel;

}

}

}



strPath는 파일 경로를 string 타입으로 얻어온거구요


8비트 비트맵인지라 팔레트 정보가 있습니다.


SetPixel로 하나 하나 출력해보니 아무리 메모리DC에 출력을 해도 깜빡임이 멈추질 않더라구요




제발 도와주십쇼 ㅠㅠ