IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

PHP抓屏函数实现屏幕快照

BIWEB开源PHP WMS系统创始人ArthurXF肖飞的blog 2010-12-06 21:27:57 累计浏览 4,190 次
本机暂存
* 屏幕快照
$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默认自带)

同分类推荐文章

  1. SmartPerfetto 2026.06.04-07.17 六周更新复盘:从 v1.0.28 到 v1.1.1 (2026-07-17 00:00:00)
  2. 用 CLIProxyAPI 把 Codex 变成一个 OpenAI 兼容的 API 服务 (2026-07-12 22:05:00)
  3. 读完 Bun 用 Rust 重写:1 个人 11 天重写 50 万行代码是怎么做到的 (2026-07-12 08:00:00)

查看更多 后端 文章 →

建议继续学习

  1. 使用gettext来支持PHP的多语言 (累计阅读 39,349)
  2. WordPress插件开发 -- 在插件使用数据库存储数据 (累计阅读 29,232)
  3. Paypal接口详细代码(PHP版,非API接口) (累计阅读 19,484)
  4. 我的PHP,Python和Ruby之路 (累计阅读 13,221)
  5. include(“./file.php”)和include(“file.php”)区别 (累计阅读 12,880)
  6. 15个最好的免费开源电子商务平台 (累计阅读 12,602)
  7. Redis消息队列的若干实现方式 (累计阅读 12,172)
  8. 到底什么是MVC? (累计阅读 11,998)
  9. 整理了一份招PHP高级工程师的面试题 (累计阅读 11,820)
  10. Rolling cURL: PHP并发最佳实践 (累计阅读 11,560)