ThePimpにて、PHPとGDライブラリを使ってスクリーンキャプチャを行う方法が紹介されています。この方法は、最新のPHP 5.2.2で標準で使用できる機能ですが、PHP5.2であれば動作するWindows版GDライブラリも配布されています。Edin Kadribasic氏による、PHP 5.2用のphp_gd2.dllをダウンロードするにはこちらをクリックしてください。
スクリーンショットを取る方法
<?php
$im = imagegrabscreen();
imagepng($im, "myscreenshot.png");
?>
ウィンドウをキャプチャする方法
以下の方法は、Windows版PHPでInternet Explorerを立ち上げて、ウィンドウをキャプチャします。
<?php $browser = new COM("InternetExplorer.Application"); $handle = $browser->HWND; $browser->Visible = true; $im = imagegrabwindow($handle); $browser->Quit(); imagepng($im, "iesnap.png"); ?>
次に、内容を表示した後ウィンドウをキャプチャする方法を紹介します。
<?php $browser = new COM("InternetExplorer.Application"); $handle = $browser->HWND; $browser->Visible = true; $browser->Navigate("http://blog.thepimp.net"); /* Still working? */ while ($browser->Busy) { com_message_pump(4000); } $im = imagegrabwindow($handle, 0); $browser->Quit(); imagepng($im, "iesnap.png"); ?>
最後に、フルスクリーンモードでInternet Explorerを立ち上げて、ウィンドウをキャプチャする方法です。
<?php $browser = new COM("InternetExplorer.Application"); $handle = $browser->HWND; $browser->Visible = true; $browser->FullScreen = true; $browser->Navigate("http://blog.thepimp.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"); ?>
Internet Explorerの制御を行うには、MSDNを見るとIBrowser2のドキュメントが掲載されています。(PHPプロ!)
関連リンク
関連ニュース
転載元
PHPプロ!:最新のPHPニュース