|
우선 il's 님 감사합니다. 많은 도움이 되었습니다.
그런데, 한가지 문제가 있어서요 ...... 다름이 아니라 제공해 주신 방법은 웹브라우저 콘트롤을 포함
하고 있는 form이 윈도우 상에 보일때에만 동작하지 않나요 ?
만일 웹페이지가 로드된 창이 숨어 있다거나, Visible 속성이 false로 되어 있으면, 제대로 동작하지
않던데요 .......
그리고, 웹페이지의 전체 내용을 이미지로 저장해야 하는데, 위의 방법은 창의 크기만큼만 가능할 것
같은데요........ 페이지가 로드되어 있을 경우 스크롤바에 숨겨진 부분까지 해야 하는데......
il's 님이 쓰신 글 :
: ds2ami 님 안녕하세요... ^^
:
:
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
: HDC DC;
: TImage *Image = new TImage(this);
:
: DC = GetDC(WebBrowser1->Handle); ----- 1
:
: Image->Width = WebBrowser1->Width; ----- 2
: Image->Height = WebBrowser1->Height; ----- 3
: BitBlt(Image->Canvas->Handle, 0, 0, Image->Width, Image->Height,DC, 0, 0, SRCCOPY);
: ReleaseDC (WebBrowser1->Handle, DC); ----- 4
: Image->Picture->SaveToFile(\"C:\\\\a.bmp\");
: }
:
: 일단 소스입니다.
:
: 위에서.. 1,2,3,4에 bmp로 저장하고 싶은 컴트롤을 집어 넣이 주면 됩니다.
:
: 위에서 WebBrowser를 집어 넣었느데....
:
: 즉 폼위에 TCppWebBrowser를 올려 좋고... 그것에 페이지를 한다 뛰읍니다.
:
: 그런다음에 그 페이지를 Capture 하는 기능을 합니다. Capture해서 기능을 합니다.
:
: 그럼 즐거운 프로그램하세요... ^^
:
:
:
: ds2ami 님이 쓰신 글 :
: : 프로그램 작성중에 해결안되는 문제가 있어 질문드립니다.
: :
: : 인터넷 사이트의 특정 페이지 전체의 내용을 비트맵으로 저장하려 합니다.
: : (프로그램으로......., 그냥 사이트를 불러와서 그림으로 저장하는 프로그램이라고 생각하시길)
: :
: : 그래서 익스플로러의 콘트롤을 Import 해서 FORM 에 올려놓고, 사이트를 로드하고, 그리고 ...
: :
: : Graphics::TBitmap *FormImage = Form2->GetFormImage();
: :
: : 이와같은 방법으로는 안되나요 ? 결과를 보면 그냥 Form2사이즈의 흰색 바탕만 나타납니다.
: :
: : 이와같은 방법으로 안되면, 어떻게 해야 하나요 ????????
|