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 常见郁闷问题答解
Nov 25 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 PHP
有道搜索和IP138的IP的API接口(PHP应用)
Nov 29 PHP
推荐5款跨平台的PHP编辑器
Dec 25 PHP
PHP扩展程序实现守护进程
Apr 16 PHP
php 类自动载入的方法
Jun 03 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
Mar 07 PHP
CodeIgniter常用知识点小结
May 26 PHP
PHP+Apache+Mysql环境搭建教程
Aug 01 PHP
PHP打印输出函数汇总
Aug 28 PHP
PHP 实现页面静态化的几种方法
Jul 23 PHP
PHP+redis实现的悲观锁机制示例
Jun 12 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
杏林同学录(八)
2006/10/09 PHP
php导出word文档与excel电子表格的简单示例代码
2014/03/08 PHP
PHP中nowdoc和heredoc使用需要注意的一点
2014/03/21 PHP
php基础教程
2015/08/26 PHP
Twig模板引擎用法入门教程
2016/01/20 PHP
PHP会话操作之cookie用法分析
2016/09/28 PHP
PHP中文字符串截断无乱码解决方法
2016/10/10 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
Laravel框架实现定时Task Scheduling例子
2019/10/22 PHP
理解Javascript_08_函数对象
2010/10/15 Javascript
JavaScript面向对象程序设计三 原型模式(上)
2011/12/21 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
JS实现网页游戏中滑块响应鼠标点击移动效果
2015/10/19 Javascript
JS实现中国公民身份证号码有效性验证
2017/02/20 Javascript
AngularJS实时获取并显示密码的方法
2018/02/06 Javascript
Angular-UI Bootstrap组件实现警报功能
2018/07/16 Javascript
JS实现用特殊符号替换字符串的中间部分区域的实例代码
2018/07/24 Javascript
微信小程序显示倒计时功能示例【测试可用】
2018/12/03 Javascript
前端路由&amp;webpack基础配置详解
2019/06/10 Javascript
JS实现普通轮播图特效
2020/01/01 Javascript
微信小程序实现弹幕墙(祝福墙)
2020/11/18 Javascript
[55:03]LGD vs EG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python编写暴力破解FTP密码小工具
2014/11/19 Python
python通过openpyxl生成Excel文件的方法
2015/05/12 Python
详解Python3中字符串中的数字提取方法
2017/01/14 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
hmac模块生成加入了密钥的消息摘要详解
2018/01/11 Python
Python 实现选择排序的算法步骤
2018/04/22 Python
浅谈python图片处理Image和skimage的区别
2019/08/04 Python
python多线程与多进程及其区别详解
2019/08/08 Python
python 消费 kafka 数据教程
2019/12/21 Python
大学生社会实践自我鉴定
2014/03/24 职场文书
Java面试题冲刺第十六天--消息队列
2021/08/07 面试题
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS
MySQL 自动填充 create_time 和 update_time
2022/05/20 MySQL