Study/CxImage2009. 3. 18. 15:27

Jitter 효과(View 클래스)

  - 메뉴에 사용자 메뉴를 만든 후 관련 함수 생성.

  - 코드삽입

   CKDY013Doc* pDoc = GetDocument();
   ASSERT_VALID(pDoc);

   // Jitter() 함수 호출
   long radius = 4;
   pDoc->m_pImage->Jitter(radius);

   //화면 갱신
   Invalidate(FALSE);

 

클립보드 복사(Doc 클래스)

  - 새로운 함수 생성 후 코드 삽입

  - 매개변수 CxImage* pCopyImage

   HANDLE hDIB = m_pCopyImage->CopyToHandle();

   // 클립보드 열기
   if(::OpenClipboard(AfxGetMainWnd()->GetSafeHwnd()))
   {
    // 클립보드 초기화
    if(::EmptyClipboard())
    {
     // 클립보드에 전송
     if(::SetClipboardData(CF_DIB, hDIB) == NULL)
     {
      AfxMessageBox("클립보드 데이타 전송 오류");
     }
    }
   }
   // 클립보드 닫기
   ::CloseClipboard();

 

  - ID_EDIT_COPY 아이디 함수 재정의 후 코드 삽입 (View 클래스)

 

   CKDY013Doc* pDoc = GetDocument();
   ASSERT_VALID(pDoc);

   // 클립보드에 복사하기
   pDoc->CopyClipBoard(pDoc->m_pImage);

 

클립보드 붙이기(App 클래스)

  - ID_EDIT_PASTE 아이디 함수 재정의 후 코드 삽입

   POSITION pos = GetFirstDocTemplatePosition();
   CDocTemplate *pTemplate = GetNextDocTemplate(pos);

   CKDY013Doc* pDoc = (CKDY013Doc*)pTemplate->OpenDocumentFile(NULL);
 
   if(pDoc)
   {
    HANDLE hBitmap = NULL;
 
    // 클립보드에서 데이터 가져오기
    if(::OpenClipboard(AfxGetMainWnd()->GetSafeHwnd()))
    {
     hBitmap = ::GetClipboardData(CF_DIB);
    }
 
    if(hBitmap)
    {
     // 클립보드에서 얻은 데이터로부터 CxImage 생성
     pDoc->m_pImage = new CxImage();
   
     pDoc->m_pImage->CreateFromHANDLE(hBitmap);
   
     POSITION pos = pDoc->GetFirstViewPosition();
   
     CKDY013View *pView = (CKDY013View*)pDoc->GetNextView(pos);
   
     CSize sizeTotal = CSize(pDoc->m_pImage->GetWidth(), pDoc->m_pImage->GetHeight());
   
     pView->SetScrollSizes(MM_TEXT, sizeTotal);
     pView->ResizeParentToFit(FALSE);
    }
    // 클립보드 닫기
    ::CloseClipboard();
   }

 

  - ID_EDIT_PASTE 아이디의 Update함수 추가 후 코드 삽입

   if(!IsClipboardFormatAvailable(CF_DIB))
   {
    pCmdUI->Enable(FALSE);
   }

 

'Study > CxImage' 카테고리의 다른 글

컬러 공간 분석  (0) 2009.03.23
CxImage 제공 함수  (0) 2009.03.18
라이브러리 함수 사용자 작성  (0) 2009.03.18
기본 시작 함수  (0) 2009.03.18
CxImage 소개 및 기본 설치  (0) 2009.03.11
Posted by 열ㅇl