array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'function.imagegrabwindow.php', 1 => 'imagegrabwindow', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Функции GD и функции для работы с изображениями', ), 'prev' => array ( 0 => 'function.imagegrabscreen.php', 1 => 'imagegrabscreen', ), 'next' => array ( 0 => 'function.imageinterlace.php', 1 => 'imageinterlace', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/image/functions/imagegrabwindow.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5 >= 5.2.2, PHP 7, PHP 8)
imagegrabwindow — Захватывает изображение окна
Делает снимок окна или его клиентской части, используя windows обработчик (свойство HWND COM объекта)
Замечание:
Функция доступна только в Windows.
handle
ID окна HWND.
client_area
Включает клиентскую часть окна приложения.
Возвращает объект изображения в случае успешного выполнения, false
в случае
возникновения ошибки.
E_NOTICE выдаётся, если handle
является
недопустимым обработчиком окна.
E_WARNING выдаётся, если Windows API устарел.
Версия | Описание |
---|---|
8.0.0 | В случае успешного выполнения функция теперь возвращает экземпляр GDImage; ранее возвращался ресурс (resource). |
8.0.0 |
client_area теперь ожидает
логическое значение (bool);
ранее ожидалось целое число (int).
|
Пример #1 Пример использования imagegrabwindow()
Захват окна (IE например)
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$im = imagegrabwindow($handle);
$browser->Quit();
imagepng($im, "iesnap.png");
imagedestroy($im);
?>
Захват окна (IE например) с содержимым
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://www.libgd.org");
/* ещё работает? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
imagedestroy($im);
?>