PHP使用GD库实现截屏
- 作者: 五速梦信息网
- 时间: 2026年04月18日 18:02
PHP5.2.2以上版本的GD库实现了两个截屏函数 imagegrabscreen 和 imagegrabwindow分别用于截取整个屏幕和截取某个窗口(同ALT+PrintScreen)的屏幕。
1. 截取整个屏幕 Screenshot
<?php
$im = imagegrabscreen();
imagepng($im, "myscreenshot.png");
?>
2. 截取一个窗口 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");
$im = imagegrabscreen();
?>
3. 截取IE内容 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.507pc.com/");
/* Still working? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
?>
4. 截取IE的全屏模式 IE in fullscreen mode
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->FullScreen = true;
$browser->Navigate(http://www.csroad.cn/);
/* Is it completely loaded? (be aware of frames!)*/
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
?>
I use Internet Example Explorer as example, if you like to play more with IE and com, check out the IBrowser2 documentation at MSDN. It should work with any kind of window as long as you give the correct handle (usually $obj->HWND).
* php_gd2.dll for 5.2.x thread safe build* php gd image documentation* IE manual (useful to tweak it from com_dotnet
相关文章
-
两台linux机器上建立ip隧道
两台linux机器上建立ip隧道
- 技术栈
- 2026年04月18日
-
西湖论剑成长史丨从萌芽破土到枝繁叶茂
西湖论剑成长史丨从萌芽破土到枝繁叶茂
- 技术栈
- 2026年04月18日
-
[shell] 使用Cat和EOF避免使用多行echo
[shell] 使用Cat和EOF避免使用多行echo
- 技术栈
- 2026年04月18日
-
利用php获取图片完整Exif信息类 获取图片详细完整信息类
利用php获取图片完整Exif信息类 获取图片详细完整信息类
- 技术栈
- 2026年04月18日
-
php获取网页中图片并保存到本地
php获取网页中图片并保存到本地
- 技术栈
- 2026年04月18日
-
PHP基于GD库实现的生成图片缩略图函数
PHP基于GD库实现的生成图片缩略图函数
- 技术栈
- 2026年04月18日
