/* TWebBrowser 이미지 뷰 활용 */
델파이에 TWebBrowser 는 Microsoft 사의 Internet Explorer 와 동일하다.
사진 이미지(*.jpg, *.png)나 pdf 파일을 보여줄 수 있고 공지사항을 html로 만들고 보여줄 때 편리하다.
이미지의 경우 가로, 세로, 파일크기 등의 정보들도 확인할 수 있다.
1 2 3 4 5 6 7 | WebBrowser1.OleObject.Document.Images.Item(0).Src; //1번째 이미지의 위치 WebBrowser1.OleObject.Document.Images.Item(0).Width; //이미지의 width WebBrowser1.OleObject.Document.Images.Item(0).Height; //이미지의 height WebBrowser1.OleObject.Document.FileSize; //이미지의 크기 WebBrowser1.OleObject.Document.body.scrollHeight; // 문서 전체 높이 WebBrowser1.OleObject.Document.documentElement.scrollHeight; // 세로스크롤의 표현 높이 |
/* 브라우저 자체 크기 조절 */
1 2 3 4 5 6 7 | WebBrowser1.OleObject.Document.Body.Style.Zoom := 0.5; // 1이 기준 // 대충 브라우저 높이에 맞게 WebBrowser1.OleObject.Document.Body.Style.Zoom := WebBrowser1.Height / (WebBrowser1.OleObject.Document.body.scrollHeight); |
/* 문서 크기 조절*/
1 2 3 4 5 6 7 8 9 10 11 12 13 | procedure TForm2.Button8Click(Sender: TObject); var pvaIn, pvaOut: OleVariant; img_w,img_h, r: integer; begin //웹페이지 세로 맞춤 img_w := WebBrowser1.OleObject.Document.Images.Item(0).Width; //1번째 이미지의 width img_h := WebBrowser1.OleObject.Document.Images.Item(0).Height; //1번째 이미지의 Height r := Trunc(100*(img_h / WebBrowser1.OleObject.Document.body.scrollHeight)); fZoomInt := r; // 기준 100, 10 ~ 1000 범위 pvaIn := fZoomInt; // WebBrowser1.ControlInterface.ExecWB(OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, pvaIn, pvaOut); WebBrowser1.ExecWB(OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, pvaIn, pvaOut); end; |
/* 404에러 대비 */
url에 해당 파일이 없어 404 에러가 발생할 때 대비하여 onNavigateError 이벤트를 다음 처럼 하면 404에러 없이
빈 화면이 표시된다.
1 2 3 4 5 6 7 | procedure TForm2.WebBrowser1NavigateError(ASender: TObject; const pDisp: IDispatch; const URL, Frame, StatusCode: OleVariant; var Cancel: WordBool); begin WebBrowser1.Navigate('about:blank'); end; |
'델파이' 카테고리의 다른 글
TMemo 모든 내용(행, Line) 보이게 세로 크기 늘리기 (0) | 2019.01.04 |
---|---|
DateSeparator 로케일에 따른 날짜포맷 변경 (0) | 2018.09.15 |
맥어드레스 mac address 구하기 getmac, ipconfig/all (0) | 2018.06.27 |
TDateTimePicker 에 날짜 안보이게 빈값 표시 팁, TButtonedEdit , TDateTimePicker 중첩 활용 (0) | 2018.06.26 |
TeeChar 엑셀 차트처럼 심플한 모양 만들기 (0) | 2018.05.12 |