search
Homephp教程php手册php---PHP使用GD库实现截屏

php---PHP使用GD库实现截屏

Jun 13, 2016 am 10:48 AM
phpusefunctionaccomplishLibraryscreenshotVersionof

PHP使用GD库实现截屏
PHP5.2.2以上版本的GD库实现了两个截屏函数 imagegrabscreen 和 imagegrabwindow
分别用于截取整个屏幕和截取某个窗口(同ALT+PrintScreen)的屏幕。
1. 截取整个屏幕 Screenshot
$im  =  imagegrabscreen () ;
imagepng ( $im ,  " myscreenshot.png " ) ;
?>
2. 截取一个窗口 Capture a window (IE for example)
$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!
$browser  =  new   COM ( " InternetExplorer.Application " ) ;
$handle  =  $browser -> HWND ;
$browser -> Visible  =  true ;
$browser -> Navigate ( " http://www.21andy.com/blog/ " ) ;
 
/* 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
$browser  =  new   COM ( " InternetExplorer.Application " ) ;
$handle  =  $browser -> HWND ;
 
$browser -> Visible  =  true ;
$browser -> FullScreen  =  true ;
$browser -> Navigate ( " http://www.21andy.com/blog/ " ) ;
 
/* 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 " ) ;
?>
I use Internet Example Explorer as example, if you like to play more with IE and com, check out the IBrowser2 documentation at MSDN. It should work with any kind of window as long as you give the correct handle (usually $obj->HWND).
* php_gd2.dll for 5.2.x thread safe build
* php gd image documentation
* IE manual (useful to tweak it from com_dotnet
 
在测试过程中我并没有出现手册中说的那种效果,而是一张纯黑的图片,这是为什么呢?
可能有两种情况,第一种情况就是这个COM组件只适用于WINDOWS服务器,因为他没有IE浏览器;第二种情况就是没有打开允许服务与桌面交互!其中第二种情况最为常见(默认是关闭的),打开的方法:点击计算机(我的电脑) -> 右键 -> 管理 -> 服务和应用程序 -> 服务 -> Apache -> 右键 -> 属性 -> 登录 -> 选中允许服务与桌面交互。

如果是第二种情况的话,我安装的是apache集成包,这样的话就找不到apache的服务在哪里,所以第二种方法的设置我没有成功,如有成功者,希望指点一下。

 

摘自  张大鹏
 
Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools