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 相关文章推荐
java EJB 加密与解密原理的一个例子
Jan 11 PHP
PHP远程连接MYSQL数据库非常慢的解决方法
Jul 05 PHP
PHP HTML代码串截取代码
Dec 29 PHP
php中长文章分页显示实现代码
Sep 29 PHP
解析php中的fopen()函数用打开文件模式说明
Jun 20 PHP
php读取目录及子目录下所有文件名的方法
Oct 20 PHP
linux中cd命令使用详解
Jan 08 PHP
PHP读取配置文件类实例(可读取ini,yaml,xml等)
Jul 28 PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 PHP
Yii框架实现邮箱激活的方法【数字签名】
Oct 18 PHP
PHP最常用的正则表达式
Feb 13 PHP
实例分析PHP中PHPMailer发邮件
Dec 13 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
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
ThinkPHP的I方法使用详解
2014/06/18 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
Laravel中获取路由参数Route Parameters的五种方法示例
2017/09/29 PHP
PHP随机数函数rand()与mt_rand()的讲解
2019/03/25 PHP
PHP 命名空间和自动加载原理与用法实例分析
2020/04/29 PHP
个人总结的一些关于String、Function、Array的属性和用法
2007/01/10 Javascript
javascript网页关闭时提醒效果脚本
2008/10/22 Javascript
js replace 与replaceall实例用法详解
2013/08/03 Javascript
轻松创建nodejs服务器(9):实现非阻塞操作
2014/12/18 NodeJs
四种参数传递的形式——URL,超链接,js,form表单
2015/07/24 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
浅谈JavaScript的内置对象和浏览器对象
2016/06/03 Javascript
JS实现图片上传预览功能
2016/11/21 Javascript
JavaScript登录验证基础教程
2017/11/01 Javascript
浅谈vue引入css,less遇到的坑和解决方法
2018/01/20 Javascript
Javascript删除数组里的某个元素
2019/02/28 Javascript
使用React手写一个对话框或模态框的方法示例
2019/04/25 Javascript
js里面的变量范围分享
2020/07/18 Javascript
[56:42]VP vs RNG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
python用Pygal如何生成漂亮的SVG图像详解
2017/02/10 Python
python装饰器简介---这一篇也许就够了(推荐)
2019/04/01 Python
Python3 字典dictionary入门基础附实例
2020/02/10 Python
python中turtle库的简单使用教程
2020/11/11 Python
浅谈CSS3 box-sizing 属性 有趣的盒模型
2019/04/02 HTML / CSS
详解CSS3媒体查询响应式布局bootstrap 框架原理实战(推荐)
2020/11/16 HTML / CSS
利用HTML5 Canvas制作键盘及鼠标动画的实例分享
2016/03/15 HTML / CSS
银行领导证婚词
2014/01/11 职场文书
理工学院学生自我鉴定
2014/02/23 职场文书
大学新闻系自荐书
2014/05/31 职场文书
抗洪救灾标语
2014/10/08 职场文书
推销搭讪开场白
2015/05/28 职场文书
MySQL学习总结-基础架构概述
2021/04/05 MySQL
Python Numpy之linspace用法说明
2021/04/17 Python
使用Pytorch训练two-head网络的操作
2021/05/28 Python
python实现双链表
2022/05/25 Python