* 屏幕快照
$im = imagegrabscreen();
imagepng($im, "myscreenshot.png");
?>
* 抓取一个窗口(IE为例)
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$im = imagegrabwindow($handle);
$browser->Quit();
imagepng($im, "iesnap.png");
$im = imagegrabscreen();
?>
* 抓取IE窗口及窗口内容(IE为例)
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://blog.thepimp.net");
/* Still working? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
?>
* IE全屏模式
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->FullScreen = true;
$browser->Navigate("http://blog.thepimp.net");
/* 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");
?>
需要说明几点
1.这二种方法只能工作在windows下面,
2.黑屏解决办法--->>web 服务器(iis或apache)做为windows服务时,必须打开"允许与桌面交互"的选项.(点击服务属性->登录->勾选"允许与桌面交互".(一定要记得重起apache或其他的服务器才会有用,我已经成功,无庸质疑)
3.需要gb库版本为2.0.34(php5.2.2默认自带)
PHP抓屏函数实现屏幕快照
本机暂存
同分类推荐文章
- Vibe新开源项目 - Vaala AI Gateway (2026-05-17 02:10:19)
- SmartPerfetto 架构文章 Q&A:8 个深度技术问答 (2026-04-10 11:00:00)
- 让 AI 把我的 PHP 博客重写成 Go (2026-03-27 18:33:54)
建议继续学习
- 使用gettext来支持PHP的多语言 (累计阅读 39,187)
- WordPress插件开发 -- 在插件使用数据库存储数据 (累计阅读 29,086)
- Paypal接口详细代码(PHP版,非API接口) (累计阅读 19,341)
- 我的PHP,Python和Ruby之路 (累计阅读 13,066)
- include(“./file.php”)和include(“file.php”)区别 (累计阅读 12,720)
- 15个最好的免费开源电子商务平台 (累计阅读 12,461)
- Redis消息队列的若干实现方式 (累计阅读 12,002)
- 到底什么是MVC? (累计阅读 11,696)
- 整理了一份招PHP高级工程师的面试题 (累计阅读 11,448)
- Rolling cURL: PHP并发最佳实践 (累计阅读 11,421)