PHP imagegrabscreen和imagegrabwindow(截取网站缩略图)的实例代码


Posted in PHP onNovember 07, 2013

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(“https://3water.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(“https://3water.com”);    
/* 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”);    
?>

上面就是说如何使用PHP COM调用IE窗口打开网页进行截屏,但很多朋友得到的结果只是一张纯黑的图片,这是为什么呢?
可能有两种情况,第一种情况就是这个COM组件只适用于WINDOWS服务器,其它系统的服务器是不支持的,因为他没有IE浏览器,第二种情况就是没有打开允许服务与桌面交互!其中第二种情况最为常见,打开的方法就是点击计算机(我的电脑) -> 右键 -> 管理 -> 服务和应用程序 -> 服务 -> Apache(我自己使用apache服务器) -> 右键 -> 属性 -> 登录 -> 登录身份下面既是!
PHP 相关文章推荐
提升PHP执行速度全攻略(上)
Oct 09 PHP
使用sockets:从新闻组中获取文章(二)
Oct 09 PHP
聊天室php&amp;mysql(六)
Oct 09 PHP
PHP5新特性: 更加面向对象化的PHP
Nov 18 PHP
php GeoIP的使用教程
Mar 09 PHP
php模拟socket一次连接,多次发送数据的实现代码
Jul 26 PHP
PHP实现加密的几种方式介绍
Feb 22 PHP
thinkphp微信开之安全模式消息加密解密不成功的解决办法
Dec 02 PHP
PHP简单判断iPhone、iPad、Android及PC设备的方法
Oct 11 PHP
CI框架数据库查询缓存优化的方法
Nov 21 PHP
PHP获取对象属性的三种方法实例分析
Jan 03 PHP
PhpStorm+xdebug+postman调试技巧分享
Sep 15 PHP
php获取汉字首字母的函数
Nov 07 #PHP
PHP输出当前进程所有变量/常量/模块/函数/类的示例
Nov 07 #PHP
php cookie使用方法学习笔记分享
Nov 07 #PHP
PHP 5.5 创建和验证哈希最简单的方法详解
Nov 07 #PHP
php使用mb_check_encoding检查字符串在指定的编码里是否有效
Nov 07 #PHP
PHP中spl_autoload_register函数的用法总结
Nov 07 #PHP
php去除HTML标签实例
Nov 06 #PHP
You might like
德生S2000南麂列岛台湾FM收听记录
2021/03/02 无线电
php 多线程上下文中安全写文件实现代码
2009/12/28 PHP
很让人受教的 提高php代码质量36计
2012/09/05 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
PHP开发微信支付的代码分享
2014/05/25 PHP
基于thinkPHP类的插入数据库操作功能示例
2017/01/06 PHP
PHP面向对象学习之parent::关键字
2017/01/18 PHP
PHP中使用OpenSSL生成证书及加密解密
2017/02/05 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
PHP PDOStatement::rowCount讲解
2019/02/01 PHP
yii2的restful api路由实例详解
2019/05/14 PHP
js 弹出框 替代浏览器的弹出框
2010/10/29 Javascript
JavaScript的递归之递归与循环示例介绍
2013/08/05 Javascript
div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
2013/08/29 Javascript
JS 获取滚动条高度示例代码
2013/10/24 Javascript
jQuery中prepend()方法用法实例
2014/12/25 Javascript
js实现大转盘抽奖游戏实例
2015/06/24 Javascript
js点击文本框后才加载验证码实例代码
2015/10/20 Javascript
javascript实现起伏的水波背景效果
2016/05/16 Javascript
JQuery.validate在ie8下不支持的快速解决方法
2016/05/18 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
JS判断浏览器是否安装flash插件的简单方法
2016/09/13 Javascript
浅谈js停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)
2017/02/08 Javascript
js编写选项卡效果
2017/05/23 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
通过实例解析javascript Date对象属性及方法
2020/11/04 Javascript
[50:11]2018DOTA2亚洲邀请赛 4.7总决赛 LGD vs Mineski 第三场
2018/04/09 DOTA
[01:36:19]Secret vs NB 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[01:16:12]完美世界DOTA2联赛PWL S2 FTD vs Inki 第一场 11.21
2020/11/23 DOTA
python输入错误密码用户锁定实现方法
2017/11/27 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
Python识别html主要文本框过程解析
2020/02/18 Python
惠普美国官方商店:HP Official Store
2016/08/28 全球购物
毕业生找工作求职信
2014/08/05 职场文书
代办社保委托书范文
2014/10/06 职场文书