더북(TheBook)

그럼 실제로 ImageTool 프로그램 동작 시 출력창에 문자열을 표시하는 코드를 추가해보자. ImageTool 프로그램에서 BMP 파일을 불러올 때, 간단하게 파일 정보를 출력하는 코드를 추가해보자. 추가할 파일 정보는 파일의 전체 경로, 그리고 비트맵 영상의 가로 및 세로 크기, 색상수이다. 소스 5-24를 참고하라.

소스 5-24 파일 열기 동작 시 출력창에 영상 정보 문자열 출력(ImageToolDoc.cpp)
BOOL CImageToolDoc::OnOpenDocument(LPCTSTR lpszPathName)
{
    if (!CDocument::OnOpenDocument(lpszPathName))
        return FALSE;

    BOOL res = m_Dib.Load(CT2A(lpszPathName));
    if (res)
        AfxPrintInfo(_T("[파일 열기] 파일 경로: %s, 가로 크기: %d픽셀, 세로 크기: %d픽셀, 색상수: %d"),
            lpszPathName, m_Dib.GetWidth(), m_Dib.GetHeight(), 0x01 << m_Dib.GetBitCount());

    return res;
}

이제 ImageTool 프로그램을 실행시켜서 BMP 파일을 몇 개 열어서 출력창을 확인해보자. 그림 5-49는 lenna.bmp 파일과 mandrill.bmp 파일을 열은 후 출력창에 파일의 전체 경로와 비트맵 영상 정보가 출력된 화면이다. 문자열 출력 함수가 제대로 동작하고 있음을 확인할 수 있다. 추후 영상 처리 알고리즘을 구현 시 AfxPrintInfo 함수를 유용하게 사용하기 바란다.

그림 5-49 파일 열기 후 출력창에 영상 정보 보여주기
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.