Capturas de pantalla automáticas con PHP
En muchas aplicaciones puede ser útil realizar capturas de pantalla de forma automática. PHP permite capturar de forma sencilla toda la pantalla de Windows o el contenido de alguna ventana.
Se acaba de publicar un artículo en el que se explica como realizar capturas de pantalla en Windows utilizando solo PHP. El código necesario para capturar una página web cargada en Internet Explorer es muy sencillo:
<?php
$browser = new COM("InternetExplorer.Application");
$handle = $browser->HWND;
$browser->Visible = true;
$browser->Navigate("http://www.url-que-se-captura.com");
/ Esperar a que IE cargue la página entera /
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "nombre-captura.png");
?>
Ver otros ejemplos en el artículo original.
El único inconveniente es que el código solo funciona con la extensión
php_gd2.dll
correspondiente a la versión 5.2.2 de PHP. Esta versión está a punto de salir, pero si no puedes esperar, el post original también tiene un enlace para descargarte esa DLL específica.Fuente: Screen capture with PHP and GD
Comentarios
-
#1
Hola, este articulo me resulta interesante, e incluso lo he intentado probar para mi web, pero me da error en la linea 2, por favor ¿que tengo que hacer? esque lo necesito para mi web.
www.webinternauta.com -
#2
Hola Carlos,
En los comentarios del artículo original se comentan varios problemas y posibles soluciones.
También se plantean dudas sobre cómo hacerlo con otro navegador, por ejemplo con Firefox.
Respecto a los requisitos, además de necesitar obviamente Windows, se necesita PHP 5.2.2 o posterior (por la versión de la librería GD).
Para usar los controles COM en Windows no hay que instalar nada especial, ni habilitar ninguna extensión, ya que forman parte del núcleo de PHP (http://es.php.net/com). -
#3
Hola de nuevo Carlos,
A mi el código anterior me funciona bien cuando lo lanzo desde la línea de comandos (> php nombreArchivo.php).
Quizás lo estás intentando ejecutar desde el navegador y entonces no se te abre el IE.
Este artículo ya no permite añadir más comentarios.
¿Por qué? Los artículos cierran sus comentarios automáticamente
unos meses después de su publicación para asegurar que estos sigan
siendo relevantes.
Proyectos Symfony destacados
La forma más sencilla de generar el backend de tus aplicaciones Symfony. Ver más
Síguenos en @symfony_es para acceder a las últimas noticias.