©
このドキュメントでは、 php中国語ネットマニュアル リリース
(PHP 5 >= 5.2.2, PHP 7)
imagegrabwindow — Captures a window
$window_handle
[, int $client_area
= 0
] )Grabs a window or its client area using a windows handle (HWND property in COM instance)
window_handle
The HWND window ID.
client_area
Include the client area of the application window.
Returns an image resource identifier on success, FALSE
on failure.
E_NOTICE is issued if window_handle
is invalid
window handle.
E_WARNING is issued if the Windows API is too old.
Example #1 imagegrabwindow() example
Capture a window (IE for example)
<?php
$browser = new COM ( "InternetExplorer.Application" );
$handle = $browser -> HWND ;
$browser -> Visible = true ;
$im = imagegrabwindow ( $handle );
$browser -> Quit ();
imagepng ( $im , "iesnap.png" );
imagedestroy ( $im );
?>
Capture a window (IE for example) but with its content
<?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 );
?>
Note:
This function is only available on Windows.
[#1] nico ->atdot [2007-09-29 08:37:41]
If you just want to take a screenshot of a website WITHOUT the ugly IE window around it, the easiest way is setting the "Fullscreen" property to TRUE.
$browser->Fullscreen = true;
This is basically the same as pressing F11 once the browser is open, so you just get the actual website.