|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как сохранить веб страничку в Jpeg
как вызвать процедуру generateJPEGfromBrowser ? что такое" browser: iWebBrowser2" и tarHeight: Integer; tarWidth: Integer ????????
Код:
procedure generateJPEGfromBrowser(browser: iWebBrowser2; jpegFQFilename: String; srcHeight: Integer; srcWidth: Integer; tarHeight: Integer; tarWidth: Integer); var sourceDrawRect : TRect; targetDrawRect: TRect; sourceBitmap: TBitmap; targetBitmap: TBitmap; jpeg: TJPEGImage; viewObject: IViewObject; begin sourceBitmap := TBitmap.Create ; targetBitmap := TBitmap.Create ; jpeg := TJPEGImage.Create ; try try sourceDrawRect := Rect(0,0, srcWidth , srcHeight ); sourceBitmap.Width := srcWidth ; sourceBitmap.Height := srcHeight ; viewObject := browser as IViewObject; if viewObject = nil then Exit; OleCheck(viewObject.Draw(DVASPECT_CONTENT, 1, nil, nil, self.Handle, sourceBitmap.Canvas.Handle, @sourceDrawRect, nil, nil, 0)); // Resize Bitmap targetDrawRect := Rect(0,0, tarWidth, tarHeight); targetBitmap.Height := tarHeight; targetBitmap.Width := tarWidth; targetBitmap.Canvas.StretchDraw(targetDrawRect, sourceBitmap); // Create JPEG from Bitmap and save it jpeg.Assign(targetBitmap) ; makeFileWriteable(jpegFQFilename); jpeg.SaveToFile (jpegFQFilename); finally jpeg.free; sourceBitmap.free ; targetBitmap.free; end; except // errors end; end; lmikle: Ой, кто-то бит будет за неиспользование тегов... |
#2
|
|||
|
|||
не очень понятно
|
#3
|
|||
|
|||
browser : IWebBrowser2 - ссылка на интерфейс реального окна броузера.
tarHeight, tarWidth - высота и ширина получаемой картинки. Первый параметр получается из окна браузера, есть там соответсвующее свойство, только его надо привести к нужному интерфейсу. Второй и третий ты задаешь сам по своим потребностям. |
#4
|
||||
|
||||
generateJPEGfromBrowser(WebBrowser1,GetCurrentDir+ '\Screen.jpg',WebBrowser1.Height,WebBrowser1.Width ,WebBrowser1.Height,WebBrowser1.Width);
|