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

2015-01-24信息快讯网

PHP5.2.2以上版本的GD库实现了两个截屏函数 imagegrabscreen 和 imagegrabwindow ,分别用于截取整个屏幕和截取某个窗口(同ALT+PrintScreen)的屏幕

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(“http://www.jb51.net”);    

/* 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(“http://www.jb51.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”);    
?> 

上面就是说如何使用PHP COM调用IE窗口打开网页进行截屏,但很多朋友得到的结果只是一张纯黑的图片,这是为什么呢?
可能有两种情况,第一种情况就是这个COM组件只适用于WINDOWS服务器,其它系统的服务器是不支持的,因为他没有IE浏览器,第二种情况就是没有打开允许服务与桌面交互!其中第二种情况最为常见,打开的方法就是点击计算机(我的电脑) -> 右键 -> 管理 -> 服务和应用程序 -> 服务 -> Apache(我自己使用apache服务器) -> 右键 -> 属性 -> 登录 -> 登录身份下面既是!
PHP中多维数组的foreach遍历示例
Codeigniter出现错误提示Error with CACHE directory的解决方案
使用PHP函数scandir排除特定目录
Codeigniter中禁止A Database Error Occurred错误提示的方法
PHP开源开发框架ZendFramework使用中常见问题说明及解决方案
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
使用php批量删除数据库下所有前缀为prefix_的表
php 批量添加多行文本框textarea一行一个
浅谈php扩展imagick
在PHP中使用X-SendFile头让文件下载更快
windwos下使用php连接oracle数据库的过程分享
PHP解析html类库simple_html_dom的转码bug
Windows中使用计划任务自动执行PHP程序实例
Windows和Linux中php代码调试工具Xdebug的安装与配置详解
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
codeigniter框架The URI you submitted has disallowed characters错误解决方法
php中使用getimagesize获取图片、flash等文件的尺寸信息实例
windows服务器中检测PHP SSL是否开启以及开启SSL的方法
php使用imagick模块实现图片缩放、裁剪、压缩示例
PHP图片等比缩放类SimpleImage使用方法和使用实例分享
提高PHP编程效率的方法
php获取汉字首字母的函数
PHP中spl_autoload_register函数的用法总结
php foreach循环中使用引用的问题
php Session存储到Redis的方法
在PHP中使用redis
php preg_replace替换实例讲解
PHP时间戳 strtotime()使用方法和技巧
PHP 使用pcntl和libevent 实现Timer功能
php中OR与|| AND与&&的区别总结
zend optimizer在wamp的基础上安装图文教程
关于php程序报date()警告的处理(date_default_timezone_set)
Zend studio文件注释模板设置方法
PHP中time(),date(),mktime()区别介绍
怎么在Windows系统中搭建php环境
PHP取整函数:ceil,floor,round,intval的区别详细解析
利用php+mcDropdown实现文件路径可在下拉框选择
在windows平台上构建自己的PHP实现方法(仅适用于php5.2)
如何解决CI框架的Disallowed Key Characters错误提示
下拉列表多级联动dropDownList示例代码
©2014-2024 dbsqp.com