C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

컴포넌트/라이브러리
Delphi/C++Builder Programming Components&Libraries
[59] C++빌더에서 스캐너를 사용할 수 있는 Twain라이브러리와 사용법입니다.
홍성진 [] 8926 읽음    2000-10-05 00:00
C++빌더에서 스캐너를 사용할 수 있는 Twain라이브러리와 사용법입니다.
아래와 같이 사용하세요.


void __fastcall TForm1::Button1Click(TObject *Sender)
{
    int (__stdcall* TWAIN_Acquire)(HWND hwnd, Cardinal pixmask);
    int (__stdcall* TWAIN_Select)(HWND hwnd);
    int (__stdcall* TWAIN_Load)();
    int (__stdcall* TWAIN_Unload)();

    HINSTANCE hinst;
    hinst = LoadLibrary("eztw32.dll");

    TWAIN_Acquire = (int (__stdcall*)(HWND hwnd, Cardinal pixmask))GetProcAddress(hinst,"TWAIN_AcquireToClipboard");
    TWAIN_Select = (int (__stdcall*)(HWND hwnd))GetProcAddress(hinst,"TWAIN_SelectImageSource");
    TWAIN_Load = (int (__stdcall*)())GetProcAddress(hinst,"TWAIN_LoadSourceManager");
    TWAIN_Unload = (int (__stdcall*)())GetProcAddress(hinst,"TWAIN_UnloadSourceManager");


    Graphics::TBitmap *Bmp = new Graphics::TBitmap();
    TClipboard *pCB = Clipboard();


  // 비트맵 생성.
    try
    {
      // 소스 선택창을 띄우고...
      TWAIN_Select(Handle);
      // 트와인 소스를 메모리로 올린다.
      if (TWAIN_Load >0)
      {
        // 엑콰이어된 이미지를 클립보드로 이미지를 보내고,
        if (TWAIN_Acquire(Handle,0)>0)
        {
          // 클립보드의 이미지를 비트맵으로 옮긴다.
          Bmp->LoadFromClipboardFormat(
              CF_BITMAP,
              pCB->GetAsHandle(CF_BITMAP), 0);
          }
        // 클립보드를 비우고,
        pCB->Clear();
        // 트와인 소스 매니저를 언로드.
        TWAIN_Unload();
        // 이미지에 비트맵을 Assgn한다.
        Image1->Picture->Bitmap->Assign(Bmp);
        delete Bmp;
      }
    }
    catch(...)
    {
      //비트맵해제.
      delete Bmp;
    }

    FreeLibrary(hinst);

}

+ -

관련 글 리스트
59 C++빌더에서 스캐너를 사용할 수 있는 Twain라이브러리와 사용법입니다. 홍성진 8926 2000/10/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.