디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

프갤러들아 좀 도와줘라 api 비트맵 뷰어인데

이세상끝에서갤로그로 이동합니다. 2011.11.22 19:05:24
조회 36 추천 0 댓글 0

LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)   
{   
        LONG h,w;
    HDC hdc;        
    int fd, x, y, z;        
    PAINTSTRUCT ps;   
    OPENFILENAME OFN;   
    TCHAR str[300];   
    TCHAR buffer[300];   
    TCHAR dummy[3];   
    TCHAR lpstrFile[MAX_PATH] = "";   
    BITHEADER BitHeadr;   
    BITINFOHEADER BitInfo;   
    COLORREF color = RGB(0, 0, 0);   
  
    switch(iMessage)   
    {   
    case WM_COMMAND:
                 
                switch(LOWORD(wParam))   
        {   
                case ID_FILEOPEN:         
        {
            memset(&OFN, 0, sizeof(OPENFILENAME));   
            OFN.lStructSize = sizeof(OPENFILENAME);   
            OFN.hwndOwner = hWnd;   
            OFN.lpstrFilter = TEXT("모든 파일(*.*)\\0*.*\\0비트맵(*.bmp)\\0*.bmp\\0JPG(*.jpg)\\0*.jpg\\0");   
            OFN.lpstrFile = lpstrFile;   
            OFN.nMaxFile = MAX_PATH;   
                        
            if(GetOpenFileName(&OFN) == 0)   
            {   
                return 0;   
            }   
            fd = open(OFN.lpstrFile, O_RDONLY);  
            read(fd, buffer, sizeof(BitHeadr));   
            memcpy(&BitHeadr, buffer, sizeof(BitHeadr));   
            lseek(fd, 0, SEEK_CUR);   
            read(fd, buffer, sizeof(BitInfo));   
            memcpy(&BitInfo, buffer, sizeof(BitInfo));     
            lseek(fd, BitHeadr.bfOffset, SEEK_SET);    //비트맵 데이터 시작지점으로 이동
                
                case WM_PAINT:
            hdc = GetDC(hWnd);        
           
                           if((BitInfo.biWidth%4) == 0)       
                                {   
                                
                                        for(y = BitInfo.biHeight; y >0; y--)   
                                        {   
                                                for(x = 0; x < BitInfo.biWidth; x++)   
                                                {   
                                                        read(fd, buffer, 3);   
                                                        color = RGB(buffer[2], buffer[1], buffer[0]);   
                                                        SetPixel(hdc, x, y, color);   
                                                        lseek(fd, 0, SEEK_CUR);    
                                                }   
                                        }   
                                 
                                }                     
                        }
                        break;

                        case ID_SIZEMAX:                 //2배 확대
                        {                                
                        
            hdc = GetDC(hWnd);        
           
                                if(BitInfo.biWidth)       
                                {  
                                         for(y = BitInfo.biHeight; y >0; y=y-1)   
                                        {   
                                                for(x = 0; x < BitInfo.biWidth; x++)   
                                                {   
                                                        read(fd, buffer, 3);   
                                                        color = RGB(buffer[2], buffer[1], buffer[0]);   
                                                        SetPixel(hdc, x*2, y*2, color);
                                                        SetPixel(hdc, x*2-1, y*2, color);
                                                        SetPixel(hdc, x*2, y*2-1, color);
                                                        SetPixel(hdc, x*2-1, y*2-1, color);
                                                        lseek(fd, 0, SEEK_CUR);   
                                                }
                                        }
                  
                                }
                        }
                                break;
                }
                        
                        
                break;


출력하는부분만 붙여넣은거고
이게 파일열기를 해서 정보를 저장한다음에 점찍는식인거는 보면 알거고.
사이즈조절자체는 SetPixel 이거 이용하면 되는건 암.
질문은 메뉴중에 확대 (ID_SIZEMAX)를 누르면 그림을 크게 하려는데 이런식으로 하니까
확대누르면 바로 오류남. 어떤식으로 해야할지 모르겠다. 뭐 이용하면되겠네 이런거말고 그냥 딱 어디 수정해라식으로 알려줘



추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 이제는 의미 없어진 것 같은 시상식은? 운영자 25/12/01 - -
AD 따뜻한 겨울나기! 방한용품 SALE 운영자 25/11/27 - -
289850 자바에서 윈도우 이벤트 잡아 쓸수 있음??? 노랗치요갤로그로 이동합니다. 11.11.23 58 0
289848 은꼴? [1] iljeomobolt갤로그로 이동합니다. 11.11.23 142 0
289846 이거 다시 봐주세요 ㅠ [6] 쇼생키(112.148) 11.11.23 60 0
289845 에반겔리온~! 쿄스케갤로그로 이동합니다. 11.11.23 36 0
289843 게이다운 취미로 피아노 어떨까.. [4] 쿄스케갤로그로 이동합니다. 11.11.23 72 0
289842 형들 이거 왜 안되는건가요?? [6] 쇼생키(112.148) 11.11.23 63 0
289839 jboss 써본 횽들?? [3] 씨발라드세요갤로그로 이동합니다. 11.11.23 231 0
289838 나꼼수에...그리드 딜리버리 적용 어떨까요? 푸후후(121.130) 11.11.23 52 0
289837 형들 저 수학 병쉰인데 질문졈.jpg [5] Stan(220.244) 11.11.23 168 0
289834 아이폰 개발 하는 횽들 있나용 [2] 111(218.39) 11.11.23 80 0
289833 스마트폰에서 다운받은것들 [3] ㅂㅈㄷ(210.178) 11.11.23 191 0
289830 [조공 有]횽들 질문하나만 할께! ㅠㅠ [1] 유동뉴비(222.104) 11.11.23 151 0
289825 야 뒤에있는 여학생에게 은꼴 보다가 걸림 [2] 다림줄갤로그로 이동합니다. 11.11.23 294 0
289824 자바 string을 C에서 받아서 처리하려면 ㅇㅇ(115.95) 11.11.23 48 0
289822 너님들 개인 짤방은 있을지 모르지만 개인 브금은 없지? [4] 쿄스케갤로그로 이동합니다. 11.11.23 62 0
289821 Ajax 이거 어떻게들 발음함? [3] System32갤로그로 이동합니다. 11.11.23 155 0
289819 박정현이 최근 출연한 프로가 뭐냐 [2] 분당살람갤로그로 이동합니다. 11.11.23 63 0
289817 야 뭐든지 하다보면 "이 길은 아닌가?" 라는 느낌이 날때 [3] 다림줄갤로그로 이동합니다. 11.11.23 86 0
289815 sql문 쉬운건데 함봐봐 [5] 횽들도와줘(211.238) 11.11.23 71 0
289809 입갤) 발기찬 아침 바지 속 다 보이는 짤로 시작 [2] 다림줄갤로그로 이동합니다. 11.11.23 118 0
289807 소녀시대 sm타운 뉴욕공연인가 봤더니 [2] Stan(220.244) 11.11.23 63 0
289806 근데 다른데서는 FTA난리 잖아? [2] AnonyMous갤로그로 이동합니다. 11.11.23 69 0
289805 에마스톤썅련 입에 고츄밖아서 마구 빨게하고싶다 [3] Stan(220.244) 11.11.23 82 0
289804 어디 가서 함부로 양말 벗지 마라. [3] iljeomobolt갤로그로 이동합니다. 11.11.23 124 0
289803 어제 한잔하고 나니 만두 생각이나.. 만두 먹고싶다. iljeomobolt갤로그로 이동합니다. 11.11.23 41 0
289802 진지하게 인생걸린 질문드립니다... [2] demlon갤로그로 이동합니다. 11.11.23 81 0
289801 내가 하는 코딩은 왜 다들 이모양일까 -.-; iljeomobolt갤로그로 이동합니다. 11.11.23 89 0
289800 스카이림 좃나재밌네........ 주석없음갤로그로 이동합니다. 11.11.23 44 0
289797 횽들 제발 살려줘요... 죽을거 같아요..ㅠㅠ 펭귄(203.255) 11.11.23 40 0
289796 질문있어요... 질문(121.130) 11.11.23 38 0
289795 이미지를 3d화 시키는거 말인데 [7] elwlwlwk갤로그로 이동합니다. 11.11.23 96 0
289791 오류는 안뜨는데 왜 빌드가 안될까요? [8] 망할(182.214) 11.11.23 59 0
289790 불면증이 날 괴롭히네 [2] 써니덕후갤로그로 이동합니다. 11.11.23 49 0
289789 c언어 초보 도와주세요ㅠㅠ [4] sjcmdp(175.126) 11.11.23 97 0
289788 냐하하하하 인생 멋지군 땡칠도사갤로그로 이동합니다. 11.11.23 74 0
289787 자살추천이냐? [3] 게논볼갤로그로 이동합니다. 11.11.23 89 0
289785 형들 그럼 나 이미지 출력엔진 구현을 어떤 방향으로 잡아야 좋을까??? [3] 큐아큐아큥(125.131) 11.11.23 93 0
289784 다시질문할게용,, [1] 망할(182.214) 11.11.23 34 0
289783 c언어도 api같은거 불러서 gui가능? [4] 박구갤로그로 이동합니다. 11.11.23 121 0
289782 횽들 어째서.. dx9보다 dx7이 퍼포먼스가 더 좋게나와ㅠㅜ;? [15] 큐아큐아큥(125.131) 11.11.23 123 0
289781 횽들 c++진짜 쉬운건개ㅑ념인데요 질문좀 ㅠㅠ [5] 망할(182.214) 11.11.23 75 0
289780 횽들 질문좀 할께..[언어질문 아님] [4] 흥흥(222.107) 11.11.23 90 0
289779 html홈페이지 질문입니다. [6] Sir.Lancelot갤로그로 이동합니다. 11.11.23 104 0
289778 왜 내컴퓨터는 jar이 실행안되지 박구갤로그로 이동합니다. 11.11.23 49 0
289776 쿄스케형 [1] Lover♥갤로그로 이동합니다. 11.11.23 39 0
289775 ★도와주세요..너무막히네요...ㅜㅜ "C언어 2차원배열 질문" 입니다. [6] 샐리(221.141) 11.11.23 85 0
289774 아 고양이 개생키들 [2] 쿄스케갤로그로 이동합니다. 11.11.23 48 0
289773 아 시발 4chan에서 놀다가 바이러스 먹었다 [7] 1(121.146) 11.11.23 318 0
289772 별찍긴데..... ㅠ_ㅠ [4] 엉덩이에땀갤로그로 이동합니다. 11.11.23 96 0
289771 혹시 횽들 중에 셈툴이나 매트랩 잘하는 횽아 있어? 디스코팡팡갤로그로 이동합니다. 11.11.23 24 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2