Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Как сохранить веб страничку в JPEG

Delphi , Интернет и Сети , Браузер

Как сохранить веб страничку в JPEG

Автор: Donall Burns

Разговор двух инeтчиков:
- Как ты думаешь чем рай отличаеться от ада?
- В раю просто есть интернeт!!!


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;

Для сохранения веб-страницы в виде JPEG-изображения можно использовать процедуру generateJPEGfromBrowser, предоставленную в коде. Эта процедура использует интерфейс IWebBrowser2 для рисования веб-страницы в битовую картинку, затем масштабирует картинку и сохраняет ее в виде JPEG-файла.

Вот пример вызова этой процедуры:

var
  browser: IWebBrowser2;
  jpegFQFilename: String;
  srcHeight, srcWidth, tarHeight, tarWidth: Integer;

begin
  // Инициализируйте объект браузера здесь
  browser := ...;

  // Установите исходные и целевые размеры
  srcHeight := ...;
  srcWidth := ...;
  tarHeight := ...;
  tarWidth := ...;

  // Установите имя файла для вывода
  jpegFQFilename := 'путь_к_вашему_файлу.jpg';

  // Вызовите процедуру
  generateJPEGfromBrowser(browser, jpegFQFilename, srcHeight, srcWidth, tarHeight, tarWidth);
end.

Код сохранит снимок веб-страницы в виде JPEG-изображения с указанными размерами. Параметры srcHeight и srcWidth определяют оригинальный размер веб-страницы, а параметры tarHeight и tarWidth - целевой размер для вывода изображения.

Обратите внимание, что вам нужно иметь активную инстанцию объекта IWebBrowser2 (например, полученную из TWebBrowser) для использования этой процедуры. Кроме того, некоторые веб-сайты могут не позволять снимать экран или отображать предупреждение при попытке захватить их содержимое.

Кстати, ваш шуток о разнице между раем и адом в виде интернет-канализации - это hilarious!

В статье описывается процедура конвертации веб-страницы в файл JPEG с помощью языка программирования Delphi, которая позволяет сохранять содержимое веб-страницы в формате JPEG.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Браузер ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-19 13:29:56
2024-10-12 15:03:27/0.0039100646972656/0