Image Processing Program

´Ù¸¥ DIB Ŭ·¡½º¸¦ °¡Áö°í È­¸é Ãâ·Â

 

  °ÅÀÇ ºñ½ÁÇÏÁö¸¸ ³»¿ëÀÌ Á¶±Ý ¹Ù²ï ´Ù¸¥ DIB Ŭ·¡½º¸¦ °¡Áö°í È­¸é¿¡ Ãâ·ÂÀ» ÇØ º¾½Ã´Ù.

¾Õ¿¡¼­ ¾²ÀΠŬ·¡½º´Â http://www.codeguru.com¿¡¼­ °¡Áö°í ¿Â °ÍÀ̰í, Áö±ÝºÎÅÍ ¾µ Ŭ·¡½º´Â ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿þ¾î 97³â 12¿ù~98³â 7¿ù »çÀÌÀÇ ³»¿ë¿¡ ³ª¿À´Â °Ì´Ï´Ù. ¿ø·¡´Â ÀÚüÀûÀ¸·Î MFC¿Í ºñ½ÁÇÏÁö¸¸ ÈξÀ ÀÛÀº MAF¶ó´Â ¼ÒÇÁÆ®¿þ¾î Ç÷§ÆûÀÇ ÀϺÎÀε¥, À̹ÌÁö 󸮺κи¸ µû·Î MFC¿¡¼­ ¾µ ¼ö ÀÖµµ·Ï ºÎºÐÀûÀ¸·Î ¼öÁ¤ÇÑ °Ì´Ï´Ù. ¹¹ ±×·¡µµ °°Àº ±â´ÉÀÌ´Ï±î ºñ½ÁÇÑ ÆíÀÌÁÒ. ¼­·Î ºñ±³ÇØ º¸¸é¼­ ¾îµð°¡ ¹Ù²î¾ú´ÂÁö È®ÀÎÇØ º¸´Â °Íµµ ±¦ÂúÀ» °Ì´Ï´Ù.

 ¾Õ¿¡¼­ ¼³¸íÀ» ÇßÀ¸´Ï ÀÌÁ¦ °£·«È÷ ¼³¸íÇÕ´Ï´Ù.    ¿¹Á¦ ÇÁ·ÎÁ§Æ®ÀÔ´Ï´Ù.

1. MDI, CScrollView

2. IPF.h, TAlloc.h, TBitmap.h/cpp, TDIBitmap.h/cpp, TPalette.h/cpp, TPixmap.h/cpp
      ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡

3. µµÅ¥¸ÕÆ® Ŭ·¡½º Çì´õ¿¡ ´ÙÀ½ µÎ ÆÄÀÏ ÀÎŬ·çµå

4. µµÅ¥¸ÕÆ® Ŭ·¡½º¿¡ ¸â¹öº¯¼ö Ãß°¡

5. ¾ÖÇø®ÄÉÀÌ¼Ç Å¬·¡½º¿¡ OnFileOpen ÇÔ¼ö ¿À¹ö¶óÀ̵ù

void CImgPro3App::OnFileOpen()
{
        // TODO: Add your command handler code here
    char szFilter[] = "Image Files(*.BMP, *.IPF)|*.BMP; *.IPF|All Files(*.*)|*.*||";
    
        CFileDialog fileDlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, szFilter);
    if(IDOK == fileDlg.DoModal())
                OpenDocumentFile(fileDlg.GetPathName());        
}

6. µµÅ¥¸ÕÆ® Ŭ·¡½º¿¡¼­ OnOpenDocument¸¦ ¿À¹ö¶óÀ̵ù

BOOL CImgPro3Doc::OnOpenDocument(LPCTSTR lpszPathName)
{
        if (!CDocument::OnOpenDocument(lpszPathName))
                return FALSE;
        
        // TODO: Add your specialized creation code here
        BOOL bLoad = m_dib.Open(lpszPathName);

//        if(bLoad)
//                bLoad = m_pixmap.CreateFromDIBitmap(m_dib);

        return bLoad;
        //return TRUE;
}

7. ºäÀÇ OnDraw ¸¦ ´ÙÀ½°ú °°ÀÌ °íħ,
ÀÏ´Ü Å×½ºÆ®¸¦ À§ÇØ µµÅ¥¸ÕÆ®ÀÇ m_dib, m_pixmap µÎ º¯¼ö¸¦ Àӽ÷ΠpublicÀ» °íħ(³ªÁß¿¡ ´Ù½Ã ¿ø·¡´ë·Î protected·Î ¹Ù²Ü °Ì´Ï´Ù.)

void CImgPro3View::OnDraw(CDC* pDC)
{
        CImgPro3Doc* pDoc = GetDocument();
        ASSERT_VALID(pDoc);
        // TODO: add draw code for native data here
        pDoc->m_dib.Draw(pDC, 0, 0);
}

8. ¿©±â¼­ ÄÄÆÄÀÏÀ» Çϰí BMP ÆÄÀÏÀ» Çϳª ºÒ·¯¿À¸é µË´Ï´Ù. ±×¸² Àß ³ª¿ÀÁÒ..