imagegrabwindow
(PHP 5 >= 5.2.2, PHP 7, PHP 8)
imagegrabwindow β ΠΠ°Ρ
Π²Π°ΡΡΠ²Π°Π΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΊΠ½Π°
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅:
Π€ΡΠ½ΠΊΡΠΈΡ Π΄ΠΎΡΡΡΠΏΠ½Π° ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΠ‘ Windows.
Π‘ΠΏΠΈΡΠΎΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²
handle
-
ID-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ HWND-Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ° ΠΎΠΊΠ½Π°.
client_area
-
ΠΠΊΠ»ΡΡΠ°Π΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΡΡ ΡΠ°ΡΡΡ ΠΎΠΊΠ½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»Π°ΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΠΈΠ»ΠΈ false,
Π΅ΡΠ»ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΠΎΡΠΈΠ±ΠΊΠ°.
ΠΡΠΈΠ±ΠΊΠΈ
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΡΡΠΎΠ²Π½Ρ E_NOTICE Π²ΡΠ΄Π°ΡΡΡΡ, Π΅ΡΠ»ΠΈ Π² Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ΅ handle
ΠΏΠ΅ΡΠ΅Π΄Π°Π»ΠΈ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΉ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ ΠΎΠΊΠ½Π°.
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠΈΠ±ΠΊΡ ΡΡΠΎΠ²Π½Ρ E_WARNING, Π΅ΡΠ»ΠΈ API-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΠ‘ Windows ΡΡΡΠ°ΡΠ΅Π».
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
ΠΡΠΈΠΌΠ΅ΡΡ
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΡΠΈΠΌΠ΅Ρ Π·Π°Ρ
Π²Π°ΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΠΊΠ½Π° ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ imagegrabwindow()
ΠΠ°Ρ
Π²Π°Ρ ΠΎΠΊΠ½Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ° IE.
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$im = imagegrabwindow($handle);
$browser->Quit();
imagepng($im, "iesnap.png");
?>
ΠΠ°Ρ
Π²Π°Ρ ΠΎΠΊΠ½Π° Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ° 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");
?>
Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ°ΠΊΠΆΠ΅