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 相关文章推荐
让你同时上传 1000 个文件 (一)
Oct 09 PHP
php session和cookie使用说明
Apr 07 PHP
优化php效率,提高php性能的一些方法
Mar 24 PHP
PHP中几种常见的超时处理全面总结
Sep 11 PHP
深入解析php中的foreach函数
Aug 31 PHP
PHP队列用法实例
Nov 05 PHP
PHP判断是否连接上网络的方法
Jul 01 PHP
PHP中foreach()用法汇总
Jul 02 PHP
在WordPress中实现评论头像的自定义默认和延迟加载
Nov 24 PHP
使用vs code编辑调试php配置的方法
Jan 29 PHP
Laravel模糊查询区分大小写的实例
Sep 29 PHP
确保Laravel网站不会被嵌入到其他站点中的方法
Oct 18 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
mysql下创建字段并设置主键的php代码
2010/05/16 PHP
php中防止伪造跨站请求的小招式
2011/09/02 PHP
php中长文章分页显示实现代码
2012/09/29 PHP
一个简单且很好用的php分页类
2013/10/26 PHP
ThinkPHP之M方法实例详解
2014/06/20 PHP
CentOS 7.2 下编译安装PHP7.0.10+MySQL5.7.14+Nginx1.10.1的方法详解(mini版本)
2016/09/01 PHP
form自动提交实例讲解
2017/07/10 PHP
javascript继承之为什么要继承
2012/11/10 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
js前端解决跨域问题的8种方案(最新最全)
2016/11/18 Javascript
基于Node.js + WebSocket打造即时聊天程序嗨聊
2016/11/29 Javascript
Vuex之理解state的用法实例
2017/04/19 Javascript
canvas实现弧形可拖动进度条效果
2017/05/11 Javascript
ajax +NodeJS 实现图片上传实例
2017/06/06 NodeJs
nodejs利用ajax实现网页无刷新上传图片实例代码
2017/06/06 NodeJs
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
p5.js入门教程之小球动画示例代码
2018/03/15 Javascript
Vue中使用webpack别名的方法实例详解
2018/06/19 Javascript
微信小程序和百度的语音识别接口详解
2019/05/06 Javascript
JS函数参数的传递与同名参数实例分析
2020/03/16 Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
2020/08/25 Javascript
在Python中使用Neo4j数据库的教程
2015/04/16 Python
Python简单计算数组元素平均值的方法示例
2017/12/26 Python
windows下python安装小白入门教程
2018/09/18 Python
Django 中间键和上下文处理器的使用
2019/03/17 Python
python redis 批量设置过期key过程解析
2019/11/26 Python
python xlsxwriter模块的使用
2020/12/24 Python
html5之Canvas路径绘图、坐标变换应用实例
2012/12/26 HTML / CSS
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
个人委托书范本
2014/09/13 职场文书
教师工作失职检讨书
2014/09/18 职场文书
工作失误检讨书
2015/01/26 职场文书
2015年新农合工作总结
2015/03/30 职场文书
离职信范本
2015/06/23 职场文书