No PHP 5.2.2 foi incluido funções para essa finalidade!
É possível criar a screenshot de toda a tela, como de uma específica aplicação. Pela propriedade HWND obtida por uma instancia COM.
imagegrabwindow()
imagegrabscreen()
Veja os exemplos encontrados na documentação...
Screenshot
<?php
$im = imagegrabscreen();
imagepng($im, "myscreenshot.png");
?>
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();
?>
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.libgd.org");
/* Still working? */
while ($browser->Busy) {
com_message_pump(4000);
}
$im = imagegrabwindow($handle, 0);
$browser->Quit();
imagepng($im, "iesnap.png");
?>