IT技术博客大学习 共学习 共进步

PHP抓屏函数实现屏幕快照

BIWEB开源PHP WMS系统创始人ArthurXF肖飞的blog 2010-12-06 21:27:57 浏览 4,062 次
* 屏幕快照
$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. 图片动态局部毛玻璃模糊效果的实现 (阅读 14,701)
  2. 淘宝图片存储架构 (阅读 10,843)
  3. 解决IE6从Nginx服务器下载图片不Cache的Bug (阅读 8,221)
  4. 精于图片处理的10款jQuery插件 (阅读 7,260)
  5. When we`re only No.2, we try harder之聊天表情设计小探讨 (阅读 7,122)
  6. 通过php+imagick 创建PDF图片预览 (阅读 6,983)
  7. phpThumb:强大的缩微图类 (阅读 6,622)
  8. js实现预加载图片让图片快速显示 (阅读 6,121)
  9. 利用开源的Gearman框架构建分布式图片处理平台[原创] (阅读 5,224)
  10. 使用数据库存放图片 (阅读 5,022)